Sublime问题记录

安装Package Control

点击View -> Show Console

image

在下方命令行内,输入以下命令。

image

  1. import urllib.request,os;pf=\'Package Control.sublime-package\';ipp=sublime.installed_packages_path();urllib.request.install_opener(urllib.request.build_opener(urllib.request.ProxyHandler()));open(os.path.join(ipp,pf),\'wb\').write(urllib.request.urlopen(\'http://sublime.wbond.net/\'+pf.replace(\' \',\'%20\')).read())

 

输入完,点击回车,可能会卡几秒钟。不要着急。卡完了,就可以发现Package Control已经装好了。可以查看到Preferences下多了一个Package Control来确实是否正常安装完成。

点击Preferences -> Package Control

image

image

 

 

在默认的情况下,打开有中文的文件,会出现乱码的问题

clip_image020[4]

打开Package Console,在里面输入Install Package

image

点击确定。

在输入:ConvertToUTF8,安装这个插件

image

安装好了是这样的,首先会弹出一个ConverToUTF8插件的简介,然后查看Package Settings中会多一个ConverToUTF8的插件

image

 

可以发现,文件乱码的问题解决了。但是文件名还是有方格乱码。

image

 

文件名方格乱码可能是可能是部分插件的问题导致的乱码,插件问题好解决,把所有插件备份一下,然后一个一个的试,就能照出来。

也有可能是笔记本系统默认设置是125%的项目大小,导致Sublime Text 3的文件名显示出现问题

image

 

1.选择“较小-100%”的模式,可以解决文件名乱码

这个是最快速的办法,如果不嫌弃1080P的笔记本看着啥都特别小的情况,可以直接使用这种方法。

 

2.可以在Sublime的user-settings中,覆盖默认的dpi,让Sublime以一个较小的文字显示

(1). 点击Preferences –> Settings–User

(2).在最后一行加上”dpi_scale”: 1.0 (注意:在加上最后一段的时候,前面的字段要加上逗号“,”这是Sublime自己的命名规范)

我的Settings–User

  1. {
  2. "font_face": "Courier New bold",//修改字体,删除本行的话,系统会还原默认字体
  3. "font_size": 11, //修改字体大小
  4. "color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme",
  5. "ignored_packages":
  6. [
  7. "Vintage"
  8. ],
  9. "dpi_scale": 1.0,
  10. }

 

 

请参考:http://jingyan.baidu.com/article/f96699bb8b38e0894e3c1bef.html

 

由于Java必须先编译java文件,然后再执行class文件,但是Sublime的运行,只会编译java文件而已,并不会执行class。所以需要做一个批处理,来帮助“它”来完成这个任务。

创建文件runjava.bat

  1. @ECHO OFF
  2.  
  3. cd %~dp1
  4. ECHO Compiling %~nx1.......
  5.  
  6. IF EXIST %~n1.class (
  7.  
  8. DEL %~n1.class
  9. )
  10. javac %~nx1
  11. IF EXIST %~n1.class (
  12.  
  13. ECHO -----------OUTPUT-----------
  14. java %~n1
  15. )

 

然后把runjava.bat批处理文件移动到JDK的bin目录

 

1.打开Sublime的根目录中的Package文件

D:\Sublime Text 3\Packages

2.找到Java.sublime-package

这个东西其实就是个压缩包,可以使用压缩包的软件打开。我这用的是7Z

clip_image006[5]

打开后,找到JavaC.sublime-build文件

clip_image008[4]

将JavaC.sublime-bulid文件取出来,修改成如下代码

  1. {
  2. "shell_cmd": "runJava \"$file\"",
  3.  
  4. "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
  5.  
  6. "selector": "source.java"
  7. }

clip_image010[4]

原先是javac换成了自己定义的bat文件runJava

clip_image012[4]

修改好了,将文件放回去,就可以在Sublime中运行,并且显示结果了。

(注意:一定要从压缩包中取出来,再放回压缩包内,如果直接解压压缩包,再压缩成压缩包的话会出现莫名其妙的问题。个人觉得是因为后缀名的问题,因为7z没办法直接压缩出Package的后缀名,而我是把“它”压缩成rar的文件,然后修改后缀名,导致出现这个问题。)

试运行一下:

clip_image014[4]

如果在运行Java时报

  1. Compiling testjava.java.......
  2. [Decode error - output not utf-8]
  3. [Decode error - output not utf-8]
  4. [Decode error - output not utf-8]
  5. [Finished in 0.5s]

 

这是因为Java配置的编译环境编码不正确,Sublime默认的是UTF-8

解决办法:

在刚才修改的JavaC.sublime-build配置文件中的最后一行添加编码格式

clip_image016[4]

再试试:

clip_image018[4]

(注意:如果你的DOS操作系统是中文的话,就需要改字符编码了,如果是英文,不就不用改,改了反而会出现乱码)

 

如果修改成cp936还如下的错:

  1. Compiling testjava.java.......
  2. [Decode error - output not cp936]
  3. [Decode error - output not cp936]
  4. [Decode error - output not cp936]
  5. [Finished in 0.5s]

需要将runJava修改成

  1. @ECHO OFF
  2. cd %~dp1
  3. ECHO Compiling %~nx1.......
  4. IF EXIST %~n1.class (
  5. DEL %~n1.class
  6. )
  7. javac -encoding UTF-8 %~nx1
  8. IF EXIST %~n1.class (
  9. ECHO -----------OUTPUT-----------
  10. java %~n1
  11. )

版权声明:本文为yyhh原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/yyhh/p/4232063.html%20