| OLD | NEW |
| 1 # Linux Sublime Dev | 1 # Linux Sublime Dev |
| 2 | 2 |
| 3 Sublime Text is a fast, powerful and easily extensible code editor. Check out | 3 Sublime Text is a fast, powerful and easily extensible code editor. Check out |
| 4 some [visual demos](http://www.sublimetext.com) for a quick demonstration. | 4 some [visual demos](http://www.sublimetext.com) for a quick demonstration. |
| 5 | 5 |
| 6 You can download and install Sublime Text 3 from the [Sublime Text | 6 You can download and install Sublime Text 3 from the [Sublime Text |
| 7 Website](http://www.sublimetext.com/3). Assuming you have access to the right | 7 Website](http://www.sublimetext.com/3). Assuming you have access to the right |
| 8 repositories, you can also install Sublime via apt-get on Linux. Help and | 8 repositories, you can also install Sublime via apt-get on Linux. Help and |
| 9 general documentation is available in the [Sublime Text 3 | 9 general documentation is available in the [Sublime Text 3 |
| 10 Docs](http://www.sublimetext.com/docs/3/). | 10 Docs](http://www.sublimetext.com/docs/3/). |
| (...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 306 ``` | 306 ``` |
| 307 | 307 |
| 308 1. Restart Sublime. Now when you save a file, you should see a "Reparsing…" | 308 1. Restart Sublime. Now when you save a file, you should see a "Reparsing…" |
| 309 message in the footer and errors will show up in the output panel. Also, | 309 message in the footer and errors will show up in the output panel. Also, |
| 310 variables and function definitions should auto-complete as you type. | 310 variables and function definitions should auto-complete as you type. |
| 311 | 311 |
| 312 **Note:** If you're having issues, adding `"sublimeclang_debug_options": true` t
o | 312 **Note:** If you're having issues, adding `"sublimeclang_debug_options": true` t
o |
| 313 your settings file will print more to the console (accessed with ``Ctrl + ` ``) | 313 your settings file will print more to the console (accessed with ``Ctrl + ` ``) |
| 314 which can be helpful when debugging. | 314 which can be helpful when debugging. |
| 315 | 315 |
| 316 ### Mac (not working) |
| 317 |
| 318 1. Install cmake if you don't already have it |
| 319 1. Install XCode |
| 320 1. Copy libclang.dylib from XCode to the SublimeClang/internals folder: |
| 321 |
| 322 ```shell |
| 323 cd ~/Library/Application\ Support/Sublime\ Text\ 3/Packages |
| 324 git clone --recursive https://github.com/quarnster/SublimeClang SublimeClang |
| 325 cd SublimeClang |
| 326 cp /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctool
chain/usr/lib/libclang.dylib internals/libclang.dylib |
| 327 # Remove i386 from the build file since XCode's libclang.dylib is only a 64-
bit version |
| 328 sed -ie 's/CMAKE_OSX_ARCHITECTURES i386 x86_64/CMAKE_OSX_ARCHITECTURES x86_6
4/' src/CMakeLists.txt |
| 329 # Copy libclang.dylib to the internals dir |
| 330 # Make the project - should be really quick, since libclang.dylib is already
built |
| 331 cd src && mkdir build && cd build |
| 332 cmake .. |
| 333 make |
| 334 ``` |
| 335 |
| 336 1. The rest of the instructions are the same, but when adding your project |
| 337 settings, add these extra arguments to `sublimeclang_options`: |
| 338 |
| 339 ```json |
| 340 "sublimeclang_options": |
| 341 [ |
| 342 ... |
| 343 // MAC-ONLY: Include these options, replacing the paths with the correct i
nstalled SDK |
| 344 "-isystem", "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.p
latform/Developer/SDKs/MacOSX10.10.sdk/usr/include/", |
| 345 "-isystem", "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.p
latform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1", |
| 346 "-F/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/De
veloper/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/", |
| 347 "isysroot", "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.p
latform/Developer/SDKs/MacOSX10.10.sdk", |
| 348 "-mmacosx-version-min=10.7", |
| 349 "-stdlib=libc++", |
| 350 "-isystem", "/usr/include", |
| 351 "-isystem", "/usr/include/c++/*", |
| 352 ] |
| 353 ``` |
| 354 |
| 355 ### Windows (not working) |
| 356 |
| 357 You'll need cl.exe which can be installed with [the Visual C++ Build Tools |
| 358 2015](https://blogs.msdn.microsoft.com/vcblog/2016/03/31/announcing-the-official
-release-of-the-visual-c-build-tools-2015/). |
| 359 You should have cl.exe on your `$PATH`, which you can get by running `C:\Program |
| 360 Files (x86)\Microsoft Visual C++ Build Tools\Visual C++ 2015 x64 Native Build |
| 361 Tools Command Prompt`. |
| 362 |
| 363 Then you'll need a copy of libclang.so, which can be found on the [LLVM |
| 364 website](http://llvm.org/releases/download.html). The instructions should be the |
| 365 same as Linux from there. |
| 366 |
| 316 ## Alternative: Code Completion with Ctags | 367 ## Alternative: Code Completion with Ctags |
| 317 | 368 |
| 318 For a fast way to look up symbols, we recommend installing the CTags plugin. | 369 For a fast way to look up symbols, we recommend installing the CTags plugin. |
| 319 | 370 |
| 320 1. Install Exuberant Ctags and make sure that ctags is in your path: | 371 1. Install Exuberant Ctags and make sure that ctags is in your path: |
| 321 http://ctags.sourceforge.net/ (on linux you should be able to just do `sudo | 372 http://ctags.sourceforge.net/ (on linux you should be able to just do `sudo |
| 322 apt-get install ctags`) | 373 apt-get install ctags`) |
| 323 1. Install the Ctags plugin: `Ctrl + Shift + P > Install Package > Ctags` | 374 1. Install the Ctags plugin: `Ctrl + Shift + P > Install Package > Ctags` |
| 324 | 375 |
| 325 Once installed, you'll get an entry in the context menu when you right click the | 376 Once installed, you'll get an entry in the context menu when you right click the |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 365 ```json | 416 ```json |
| 366 [ | 417 [ |
| 367 { "keys": ["ctrl+f7"], "command": "compile_current_file", "args": {"target_bui
ld": "Debug"} }, | 418 { "keys": ["ctrl+f7"], "command": "compile_current_file", "args": {"target_bui
ld": "Debug"} }, |
| 368 { "keys": ["ctrl+shift+f7"], "command": "compile_current_file", "args": {"targ
et_build": "Release"} }, | 419 { "keys": ["ctrl+shift+f7"], "command": "compile_current_file", "args": {"targ
et_build": "Release"} }, |
| 369 ] | 420 ] |
| 370 ``` | 421 ``` |
| 371 | 422 |
| 372 You can then press those key combinations to compile the current file in the | 423 You can then press those key combinations to compile the current file in the |
| 373 given target build. | 424 given target build. |
| 374 | 425 |
| 375 ### Mac (not working) | |
| 376 | |
| 377 1. Install cmake if you don't already have it | |
| 378 1. Install XCode | |
| 379 1. Copy libclang.dylib from XCode to the SublimeClang/internals folder: | |
| 380 | |
| 381 ```shell | |
| 382 cd ~/Library/Application\ Support/Sublime\ Text\ 3/Packages | |
| 383 git clone --recursive https://github.com/quarnster/SublimeClang SublimeClang | |
| 384 cd SublimeClang | |
| 385 cp /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctool
chain/usr/lib/libclang.dylib internals/libclang.dylib | |
| 386 # Remove i386 from the build file since XCode's libclang.dylib is only a 64-
bit version | |
| 387 sed -ie 's/CMAKE_OSX_ARCHITECTURES i386 x86_64/CMAKE_OSX_ARCHITECTURES x86_6
4/' src/CMakeLists.txt | |
| 388 # Copy libclang.dylib to the internals dir | |
| 389 # Make the project - should be really quick, since libclang.dylib is already
built | |
| 390 cd src && mkdir build && cd build | |
| 391 cmake .. | |
| 392 make | |
| 393 ``` | |
| 394 | |
| 395 1. The rest of the instructions are the same, but when adding your project | |
| 396 settings, add these extra arguments to `sublimeclang_options`: | |
| 397 | |
| 398 ```json | |
| 399 "sublimeclang_options": | |
| 400 [ | |
| 401 ... | |
| 402 // MAC-ONLY: Include these options, replacing the paths with the correct i
nstalled SDK | |
| 403 "-isystem", "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.p
latform/Developer/SDKs/MacOSX10.10.sdk/usr/include/", | |
| 404 "-isystem", "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.p
latform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1", | |
| 405 "-F/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/De
veloper/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/", | |
| 406 "isysroot", "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.p
latform/Developer/SDKs/MacOSX10.10.sdk", | |
| 407 "-mmacosx-version-min=10.7", | |
| 408 "-stdlib=libc++", | |
| 409 "-isystem", "/usr/include", | |
| 410 "-isystem", "/usr/include/c++/*", | |
| 411 ] | |
| 412 ``` | |
| 413 | |
| 414 ### Windows (not working) | |
| 415 | |
| 416 You'll need cl.exe which can be installed with [the Visual C++ Build Tools | |
| 417 2015](https://blogs.msdn.microsoft.com/vcblog/2016/03/31/announcing-the-official
-release-of-the-visual-c-build-tools-2015/). | |
| 418 You should have cl.exe on your `$PATH`, which you can get by running `C:\Program | |
| 419 Files (x86)\Microsoft Visual C++ Build Tools\Visual C++ 2015 x64 Native Build | |
| 420 Tools Command Prompt`. | |
| 421 | |
| 422 Then you'll need a copy of libclang.so, which can be found on the [LLVM | |
| 423 website](http://llvm.org/releases/download.html). The instructions should be the | |
| 424 same as Linux from there. | |
| 425 | |
| 426 ## Building inside Sublime | 426 ## Building inside Sublime |
| 427 | 427 |
| 428 To build inside Sublime Text, we first have to create a new build system. | 428 To build inside Sublime Text, we first have to create a new build system. |
| 429 | 429 |
| 430 You can add the build system to your project file (`Project > Edit Project`), | 430 You can add the build system to your project file (`Project > Edit Project`), |
| 431 replacing `out/Debug` with your output directory (on Windows, replace /'s with | 431 replacing `out/Debug` with your output directory (on Windows, replace /'s with |
| 432 \s in `cmd` and `working_dir`): | 432 \s in `cmd` and `working_dir`): |
| 433 | 433 |
| 434 ```json | 434 ```json |
| 435 { | 435 { |
| (...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 575 * [Case Conversion](https://packagecontrol.io/packages/Case%20Conversion)
- | 575 * [Case Conversion](https://packagecontrol.io/packages/Case%20Conversion)
- |
| 576 automatically changes the case of selected text, e.g. `kConstantName` to | 576 automatically changes the case of selected text, e.g. `kConstantName` to |
| 577 `CONSTANT_NAME` | 577 `CONSTANT_NAME` |
| 578 * [Text Pastry](https://packagecontrol.io/packages/Text%20Pastry) - | 578 * [Text Pastry](https://packagecontrol.io/packages/Text%20Pastry) - |
| 579 Inserts incremental number sequences with multi-select | 579 Inserts incremental number sequences with multi-select |
| 580 * [Wrap Plus](https://packagecontrol.io/packages/Wrap%20Plus) - Auto-wraps | 580 * [Wrap Plus](https://packagecontrol.io/packages/Wrap%20Plus) - Auto-wraps |
| 581 a comment block to 80 columns with `Alt + Q` (was used to write this | 581 a comment block to 80 columns with `Alt + Q` (was used to write this |
| 582 document! ;-) | 582 document! ;-) |
| 583 * [Diffy](https://packagecontrol.io/packages/Diffy) - With two files | 583 * [Diffy](https://packagecontrol.io/packages/Diffy) - With two files |
| 584 opened side-by-side, `Ctrl + k Ctrl + d` will show the differences | 584 opened side-by-side, `Ctrl + k Ctrl + d` will show the differences |
| OLD | NEW |