2010-11-09 127 views
4

我在項目中有許多使用PHP編寫的shell腳本。這些文件都沒有文件擴展名,並且由於遺留代碼造成的限制而無法添加文件擴展名。目前在Netbeans中,似乎沒有辦法將這些腳本標識爲PHP,並且這些腳本使用其他PHP腳本的語法高亮顯示。在不同的編輯器中允許shell腳本使用語法高亮的常用方法是通過類似Vim中的模式線(other examples here),但據我所知Netbeans中沒有任何類似。每個文件都有一個shebang和php標籤,它們都將腳本標識爲php文件。有沒有人知道這個解決方法?我願意爲文件添加內容來完成這項工作,但由於多種原因,我無法添加擴展名。在netbeans中突出顯示沒有擴展名的PHP shell腳本語法

FWIW我使用的NetBeans 6.9.1的PHP版本與C/C++插件來實現的。.SH文件

回答

10

我通過右鍵單擊該文件並選擇「打開方式...」選項來完成此操作。在對話框中選擇「text/x-php5」選項並點擊「打開」按鈕。有趣的是,當我進入「工具」>「選項」,「其他」部分,「文件」選項卡時,我沒有看到一種方法來刪除或更改不帶擴展名的文件的關聯。

經過額外的挖掘,我找到了保存定義的文件。在Windows XP中就可以在這裏找到:
[%HOMEDRIVE%%HOMEPATH%]\.netbeans\6.9\config\Services\MIMEResolver\user-defined-mime-resolver.xml

我的文件是這樣的:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE MIME-resolver PUBLIC "-//NetBeans//DTD MIME Resolver 1.1//EN" "http://www.netbeans.org/dtds/mime-resolver-1_1.dtd"> 
<MIME-resolver> 
    <file> 
     <ext name=""/> 
     <resolver mime="text/x-php5"/> 
    </file> 
</MIME-resolver> 
+0

不能相信我以前沒有注意到這個選項 - 雖然這沒有做任何實際的文件類型檢測,但它基本上起作用,因爲99%的文件沒有擴展名就是PHP文件。謝謝! – robjmills 2010-11-10 21:43:26

+0

不客氣!公平起見,該選項僅針對沒有設置MIME解析器的文件顯示。 – Sonny 2010-11-10 22:45:42

-1

語法高亮執行文件具有.php擴展?如果您使用PHP版本,語法高亮應該是自動的。 (順便說一下,PHP版本只是安裝PHP擴展的核心。)

+0

的文件沒有擴展名 – robjmills 2010-11-09 13:45:01

+0

對不起,我錯讀...想你的意思,你可以不加Netbeans的延伸。據我所知,添加PHP擴展是唯一的解決方案。你介意解釋爲什麼你不能添加PHP擴展?可能有另一種解決方案。 – 2010-11-09 14:42:40

+0

問題是,有大量的遺留代碼調用這些無法觸及的shell腳本。改變文件名不是一種選擇。 – robjmills 2010-11-09 15:15:58