[Macemacsjp-users 833] Re: open -a Emacs でファイルを開けない

Zurück zum Archiv-Index

Tetsuro KURITA tkuri****@mac*****
2005年 12月 15日 (木) 18:55:47 JST


open -a Emacs の問題を報告したものですが、12月版だとなおっ 
ているように感じますが(あまりまじめに試していません)、自分は以 
下のような shell script を書いて対処しておりました。

#!/bin/sh

carbonemacsPath=`whichapp -i org.gnu.Emacs`
emacsclientPath="${carbonemacsPath}/Contents/MacOS/bin/emacsclient"

dirPath=`dirname "${1}"`
cd "$dirPath"
fileName=`basename "${1}"`
inputPath="$PWD/$fileName"

if [ ! -e "$inputPath" ]
then
	echo "`basename $0`: $inputPath: No such file or directory."
	exit 1
fi

if ${emacsclientPath} -n --eval "(let ((display-buffer-reuse-frames  
t)) (find-file-other-frame \"$inputPath\"))"
then
	#echo "success emacsclient"
	activate "Emacs" -i "org.gnu.Emacs"
else
	#echo "fail emacsclient"
	if [ ! "`ps -xo command|grep -e ^${carbonemacsPath}`" ]
	then
		echo "process is not launched"
		#open -a $carbonemacsPath $1
		${carbonemacsPath}/Contents/MacOS/Emacs "$1" &
	fi
fi


このスクリプトを使うと、(すくなくとも自分にとっては)open -a  
Emacs よりいいことがあります。

* ファイルを開くとき常に新しい frame を作ってくれる。
* 選択されている buffer が dired mode でもファイルが 
コピーされない。
* たくさんのウィンドウが開かれていても一枚だけ最前面に持ってきて 
くれる。

ちなみに、whichapp と activate というコマンドは拙作 
です。
http://homepage.mac.com/tkurita/scriptfactory/ScriptGallery/ 
TheOtherScripts/whichapp/index.html

http://homepage.mac.com/tkurita/scriptfactory/ScriptGallery/ 
TheOtherScripts/SmartActivate/index.html


=======================================================
  Tetsuro KURITA
   E-mail: tkuri****@mac*****
   http://homepage.mac.com/tkurita/scriptfactory/
=======================================================




Macemacsjp-users メーリングリストの案内
Zurück zum Archiv-Index