Странненько, может super не настроен... Есть вариант, что эта комбинация перехватывается в DE. А что говорит C-h k если нажать s-tab?
Вообще на клавишу Win(Super) не реагирует. Но в XFCE, например, комбинация Super+P отрывает настройки экрана. Хммм... http://i.imgur.com/JdisPHY.png
Вот так работает, через C+TAB:
Отчего у меня при вводе в .c файле «co» и нажатии C+Tab может предлагать только «const» и не предлагает «continue». Какие есть варианты? Содержимое init.el:
(require 'package) ;; You might already have this line
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/"))
(when (< emacs-major-version 24)
;; For important compatibility libraries like cl-lib
(add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/")))
(package-initialize) ;; You might already have this line
(require 'company)
(global-set-key [C-tab] #'company-indent-or-complete-common)
(add-hook 'c-mode-common-hook #'company-mode)
Обратите внимание октуда у меня взят Melpa. У Вас оттуда же?
Company версия: 20160228.1705.
GNU Emacs 24.3.1
Ну, я использую auto-complete, а не company и никогда им не пользовался, кроме elpy где он изкаробки, но вангую, что тебе нужно настроить источники автокомплита. Хотя, например, AC именно для Си я никак особо не настраивал, но если написать «co», то предлагает const и continue, а в крестах ещё и cout, const_cast и constexpr.
Попробовал включить company в Си буфере - также предлагает только const. Настраивать нужно, видимо.
Как видите, ни у меня, ни у no-such-fileco не дополняется до continue в .с файле по такому конфигу init.el:
(require 'package) ;; You might already have this line
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/"))
(when (< emacs-major-version 24)
;; For important compatibility libraries like cl-lib
(add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/")))
(package-initialize) ;; You might already have this line
(require 'company)
(global-set-key [C-tab] #'company-indent-or-complete-common)
(add-hook 'c-mode-common-hook #'company-mode)
Хорошо, в принципе clang мне не нужен, можно компилировать и gcc, но это странно, что когда clang установлен, то company не дополняет co до continue, а когда удалить clang, то дополняет...
Вопрос: как отступы сделать? Ну когда переходишь на следующую строку, то чтобы переходило на нужное положение, в зависимости от того в теле какой функции или цикла мы находимся.
А как обычно делают? Как более принято среди любителей Emacs? Хочу сразу привыкнуть правильному, чтобы потом не возникало проблем и не пришлось переучиваться.
В c-mode есть полностью автоматическое выравнивание c-syntactic-indentation, включается c-toggle-syntactic-indentation, но оно не всем нравится, т.к. довольно «жестко» работает в соответствии с c-style. Мне норм.
Warning (initialization): An error occurred while loading `/home/alexander/.emacs.d/init.el':
Symbol's value as variable is void: c-mode-base-map
To ensure normal operation, you should investigate and remove the
cause of the error in your initialization file. Start Emacs with
the `--debug-init' option to view a complete error backtrace.
Вот все кто говорит, что это свистопирдели и что они не нужны, то что для вас не свистопирдели? Одних возможностей чистого Emacs'a без дополнительных плагинов и настроек хватает? Удобно?