
No.4ベストアンサー
- 回答日時:
> (set-tab-columns 2 (selected-buffer))
> (setq *perl-indent-column* (tab-columns > (selected-buffer)))
> (setq indent-tabs-mode t)
これで動いているってのが不思議です。
set-tab-columns ってのはタブコードを最大何個のスペースと
見なすかという設定ですし、
indent-tabs-modeにtを設定したときは、インデントに使うキャラクタを
可能なところではタブキャラクタにするという指定です。
tab-columnsは指定したバッファでのタブ幅です。
set-tab-columns - refwiki
http://xyzzy.s53.xrea.com/reference/wiki.cgi?p=s …
tab-columns - refwiki
http://xyzzy.s53.xrea.com/reference/wiki.cgi?p=t …
モードが Fundamentalになっているのでperlモードそのものが
無効になっているんじゃないでしょうか。
まあ目的が果たせたというのならいいですけど。
No.3
- 回答日時:
訂正
(setq *auto-mode-alist (remove-if (lambda (x) (string-equal "\\.cgi$" (car x))) *auto-mode-alist*))
の
(setq *auto-mode-alist は
(setq *auto-mode-alist* の間違いです。
;Perlモードでタブを有効にする
(add-hook '*perl-mode-hook*
#'(lambda ()
(set-tab-columns 2 (selected-buffer))
(setq *perl-indent-column* (tab-columns (selected-buffer)))
(setq indent-tabs-mode t)
))
で動作しました。
最初に教えていただいた方法で、 (Perl)となっていますがタブは聞きません。上の方法では、(fundamental)となり、タブが有効になりました。しかし、その前に
名前が衝突するためにexportできません:editor::*perl-mode-hook*
と表示されます。
運良く動いているだけで、正しい設定ではないようです。
No.2
- 回答日時:
> 拡張子がpl,pmの場合は、タブが有効になりましたが、拡張子が
> cgiの場合は、タブが有効になりません。
本当ですか?
---- ファイル名(....)[sjis:crlf]
とかいう行が下のほうにあると思うのですが、
.cgiファイルを開いたときにカッコの中はなんという文字列になっていますか?
Perl が入っていれば設定が利くはずなんですが。
それはともかく拡張仕事の判定と設定は
files.l というファイルの中にある
(unless auto-mode
(let ((filename (get-buffer-file-name))
(*auto-mode-last-buffer* last-buffer))
(dolist (x *auto-mode-alist*)
(when (string-matchp (car x) filename)
(funcall (cdr x))
(return)))))))
この部分で、*auto-mode-alist* という変数の中身を参照しながらやっています。
この変数は defs.l の中で
(defvar *auto-mode-alist* '(("\\.c$" . c-mode)
("\\.h$" . detect-c-or-c++-mode)
(略)
("\\.pl$" . perl-mode)
("\\.pm$" . perl-mode)
("\\.cgi$" . perl-mode)
(略)
("\\.css$" . css-mode)
("\\.cs$" . csharp-mode)
))
で設定しています。
このファイルの中身を直接書き換えるのはお勧めできないので、
もし取り除くなら
.xyzzy で
(setq *auto-mode-alist (remove-if (lambda (x) (string-equal "\\.cgi$" (car x))) *auto-mode-alist*))
とでもしておくと良いでしょう。
No.1
- 回答日時:
タブキーが自動のインデント調整のキーになっているんですけど
その機能を殺して良いということなら
.xyzzy に
(setq *c-tab-always-indent* nil)
(define-key ed::*perl-mode-map* #\tab 'self-insert-command)
の2行を追加してxyzzy再起動で多分OK。
回答ありがとうございます。
拡張子がpl,pmの場合は、タブが有効になりましたが、拡張子が
cgiの場合は、タブが有効になりません。
拡張子で判断している所が知りたいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 8 windowsで何かファイルを開くとき 新しいタブで開く になってしまっているのを切りたい。 1 2022/10/20 20:15
- その他(ソフトウェア) コマンドプロンプトについて教えてください。 状況: 画像編集ソフト上でネットから保存した画像を使うの 3 2022/05/26 11:14
- ノートパソコン マイクロソフトEdgeのタブにPFDファイルが開かれてしまう。 2 2022/09/20 14:35
- HTML・CSS ウェブサイトにアップされているPDFファイルのハイパーリンク先に飛ぶ時、新しいタブを開きたい 3 2022/12/13 13:57
- Excel(エクセル) ドキュメントに保存していたエクセルのファイルが開きません。 2 2022/12/02 09:38
- iCloud iPadでiCloud ドライブ内のファイル名 変更 2 2023/04/19 10:57
- Visual Basic(VBA) Excelのマクロについて教えてください。 作業フォルダ内に2つのファイルがあります。 このファイル 2 2023/07/09 13:40
- XML エクセルの拡張子XLSのファイルが開けなくなった 3 2022/10/19 11:30
- Word(ワード) ワードの描画ツールが再び使えなくなった件 4 2022/06/18 15:48
- フリーソフト イーファンビューでwebpファイルが開けません 1 2022/07/12 07:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ファイルをアップロードするフ...
-
Linuxで拡張子は必要か
-
EXCELファイルに誰がアクセスし...
-
KENT WEB(昨日の続きです)
-
URLに~/cgi-bin/~を隠す方法
-
イントラネット用HP アクセス解...
-
インテル製インタフェース82...
-
C# ファイル削除のエラーコード
-
$ENV{'QUERY_STRING'}以外で引...
-
AWSTATSの組み込みについて 無...
-
$ENV{'REQUEST_URI'} の値を統...
-
なぜかカウンターのパーミッシ...
-
scalaやjavaをwebアプリとして...
-
CGIの実行ができません
-
public_html外にアップロードで...
-
ASPからJavaScriptへの受け渡し...
-
直リンク用バナーの作り方
-
ラジオボタンのグループ化
-
vbでFTPサーバーに対して、サー...
-
HTTPリクエスト
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CGIでソースがそのままでてしま...
-
FC2レンタルサーバーライトでの...
-
固定パスでアップロードする場合
-
TripodのCGI
-
hp 送信する情報を・・・
-
CGIにCSSを
-
CGIをコピーしたのですがうまく...
-
CGIが実行されずにダウンロード...
-
cgiでhtmlファイルを読み込みたい
-
cgiのファイルが消せません
-
HTMLにCGIを
-
なぜかエラー。
-
cgiをhtmlに出力する方法
-
携帯サイトとPCサイトの振り分け
-
買い物カゴ画面(拡張子.cgi)...
-
HTMLのソースへサーバーの掲示...
-
C言語で作ったプログラムをC...
-
pgd mailformについて
-
cgiで.datファイル内の一文を削...
-
KENT WEBさんのcgi パスワード制限
おすすめ情報