Как сделать спидбар списком функций C + Невозможно использовать sr-speedbar+ макрос + история команд

Я новичок в Emacs на Windows XP и имею несколько запросов, которые я не смог найти / понять после большого количества поиска.

  1. Я понимаю, что speedbar будет поддерживать показ списка функций Си. Как упоминалось в http://stackru.com/questions/259364/how-do-i-configure-emacs-speedbar-for-c-sharp-mode, я добавил код в.emacs как
    (speedbar 1)
       (add-to-list 'speedbar-fetch-etags-parse-list
                    '("\\.c" . speedbar-parse-c-or-c++tag))
    
    Я вижу запуск спидбара, но он никогда не показывает функции. Может быть, мне нужно установить etags, но не могу его найти. Я также нашел gtags, но никогда не мог найти двоичный файл
  2. Я скопировал sr-speedbar.el в каталог ~/emacs.d/. Я добавил (require 'sr-speedbar) в.emacs, закомментировал код, связанный с speedbar, перезагрузил Mx ~/.emacs, но не нашел ни одного sr-speedbar. Если я раскомментирую код speedbar и прокомментирую sr-speedbar, он покажет скорость загрузки. Emacs может найти sr-speedbar.el в каталоге ~/emacs.d/, так как, если я изменю имя файла, он выдаст ошибку: невозможно найти sr-speedbar.
  3. Я хотел сделать макрос клавиатуры для регистрации с использованием tramp и ssh. Однако, когда я записываю макрос, мне нужно удалить несколько символов, чтобы указать путь от начала, т.е. emacs автоматически показывает последний путь, поэтому мне нужно удалить все символы characeters, а затем снова начать с ssh://. Макрос клавиатуры записывает все символы возврата и возвращает ошибку, если объем возврата превышает длину текущего пути. Есть ли способ избежать этого
  4. Я настроил пакет linum. Я хочу, чтобы он запускался в начале сессии emacs автоматически, набрав Mx linum. Как я могу это сделать?
  5. Есть ли способ получить историю команд (не команд оболочки), а затем воспроизвести некоторые команды Еще раз спасибо за терпение на чтение до момента:-)

2 ответа

Решение
  1. Для C, C++ и других языков, поддерживаемых CEDET/Semantic, Speedbar может отображать функции и другие объекты. Но вам нужно правильно настроить Semantic, например, вы можете использовать мою статью в CEDET.

  2. Как я понимаю, чтобы включить linum-mode глобально, нужно поставить (global-linum-mode 1) в ваш ~/.emacs

Для 3 есть два варианта:

  • просто введите "/ssh:blabla" в конце предварительно вставленного каталога (этот каталог будет проигнорирован, поскольку он станет серым).

  • делать C-a C-k стереть содержимое минибуфера.

Для 5 есть repeat-complex-command связан с C-x ESC ESC и есть repeat связан с C-x z,

Другие вопросы по тегам