GNU toàn cầu và vim


7

Có ai đã sử dụng GNU toàn cầu với vim chưa? Tôi đang điều hướng qua một cơ sở mã C ++ lớn và gặp một số khó khăn khi tìm ra cách sử dụng nó. Tôi muốn sử dụng chức năng gtags-cscope của nó nhưng tôi không thể tìm ra cách tạo cơ sở dữ liệu tham chiếu chéo mà sau này tôi có thể kết nối với vim.

Bất kỳ trợ giúp trong việc tìm kiếm giải pháp được đánh giá cao.


1
GNU Global không hỗ trợ JavaScript khi tôi dùng thử nhưng nó hoạt động tốt với PHP và IIRC, việc tích hợp Vim khá đơn giản. Bạn có thể nói chi tiết những gì bạn đã cố gắng và làm thế nào nó thất bại?
romainl

@romainl Tôi đã quen với cscope thông thường. Điều khiến tôi bối rối là tập tin nào sẽ được sử dụng cho một tham chiếu chéo cho cơ sở dữ liệu. Có nhiều tệp, nhưng tôi dường như nhận được cùng một kết quả không quan trọng tôi sử dụng gì cho cơ sở dữ liệu. Công cụ không phải lúc nào cũng tạo ra kết quả đúng. Bạn đã có bất kỳ vấn đề với nó? Đây là cơ sở mã hóa mà tôi đang cố điều hướng
flashburn

Tôi sử dụng GNU cscope toàn cầu cho các dự án PHP của tôi. Tôi sử dụng các hướng dẫn được tìm thấy ở đây . Tóm tắt: :set csprg=gtags-cscope, :cs add GTAGS. Bạn đã thực hiện ít nhất các lệnh này?
Peter Rincker

@PeterRincker Có tôi có. Tôi không phải lúc nào cũng tìm đúng "thứ" cho mình.
chớp nhoáng

Câu trả lời:


2

Bản phân phối của GNU Global đã có một vài tập lệnh vim khá tiện dụng.

Tìm kiếm 'gtags.vim' và 'gtags-cscope.vim' (có thể phù hợp nhất cho những gì bạn muốn) trong thư mục cài đặt của Global và chỉ cần sao chép thư mục bạn thích vào thư mục 'plugin' của bạn trong cấu hình của vim. Kịch bản thứ hai sẽ làm một

    set csprg=gtags-cscope

đối với bạn, nó sẽ định tuyến tất cả các lệnh cscope thông thường thông qua nhà cung cấp gtags và do đó sẽ sử dụng DB của GNU Global khi tìm kiếm.

Tôi thích chỉ đơn giản là sử dụng trực tiếp lệnh: Gtags, mà tôi thấy dễ sử dụng hơn, nhưng với mỗi người của anh ấy / cô ấy ..

Plugin gen_tags cũng có thể giúp dễ dàng xây dựng lại mã nguồn DB của bạn trực tiếp từ vim.


1

Trong thư mục mã nguồn sử dụng lệnh sau:

find . -name '*.cpp' -o -name '*.h' > gtags.files
gtags --accept-dotfiles -c -f gtags.files

Điều này sẽ xây dựng các tài liệu tham khảo chéo.

Trong vim, bạn có thể dùng lệnh sau để gọi gtags-cscope

:GtagsCscope
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.