Я использовал эту не изящную, а FAST, EASY и WORKING систему. Я не понимаю, почему не может работать, потому что единственный способ для системы разрешить создание массива большого размера и доступа к частям не разрезать его по частям:
#define DIM 3
#define WORMS 50000 //gusanos
void halla_centros_V000(double CENW[][DIM])
{
CENW[i][j]=...
...
}
int main()
{
double *CENW_MEM=new double[WORMS*DIM];
double (*CENW)[DIM];
CENW=(double (*)[3]) &CENW_MEM[0];
halla_centros_V000(CENW);
delete[] CENW_MEM;
}
Поместите это в свой файл .emacs:
;; Toggle window dedication
(defun toggle-window-dedicated ()
"Toggle whether the current active window is dedicated or not"
(interactive)
(message
(if (let (window (get-buffer-window (current-buffer)))
(set-window-dedicated-p window
(not (window-dedicated-p window))))
"Window '%s' is dedicated"
"Window '%s' is normal")
(current-buffer)))
Затем привяжите его к некоторой клавише - я использую клавишу Паузы:
(global-set-key [pause] 'toggle-window-dedicated)
И затем используйте ее для «посвящения» окно, которое вы хотите заблокировать. тогда cscope может открывать файлы только из своего окна результатов в каком-то другом окне. Работает шарм. Я специально использую его именно для этой цели - всегда держать один исходный файл на экране, а cscope - во втором буфере / окне, а просмотр cscope - в третьем.
Ну, я решил не быть шлюхой репутации и найти ответ сам. Я смотрел в cscope.el как показано на Wiki Emacs, а также xcscope.el, который идет с cscope RPM-пакетом на RHEL.
Ни один, кажется, не дает способ сделать то, что я желаю. Путь состоит в том, чтобы, вероятно, отредактировать ELisp путем добавления переменной пакета как *browse-buffer*
или что-то и просто инициализировать ту переменную, если не уже инициализированный в первый раз пользователь делает [C-c C-s g]
или что бы то ни было, и всегда показывал получающийся код в *browse-buffer*
. Тогда пользователь может поместить *browse-buffer*
везде, где он хочет его.