How to open sublime text from terminal in windows? - bash

I have installed my sublime text editor in d drive some days ago and i have customized it. and then i have create .bashrc file in users/my-name directory. then i added:
alias subl = 'the directory i have copied from the app-properties'
but it doesn't work..
when i type
subl .
it shows me,
$ subl .
bash: $: command not found
How can I open sublime text editor in git bash.
enter image description here

Let's say you installed sublime in folder d:\Sublime Text 3.
In this way you need set correct path for alias in .bashrc located in directory users/my-name. Please, take note that folder's name can have backspaces.
alias subl="/d/Sublime\ Text\ 3/sublime_text.exe"
To apply changes run commands in git bash:
cd ~
source .bashrc
Then you can run sublime with command:
subl .

Related

How to set .bash_profile, if it does not exist yet. I want to launch sublime from a command line in Mac

I want to launch sublime from a command line in Mac, using subl filename. It seems to involve dealing with .bash_profile. But I didn't locate the file. What steps to be taken?
A typical install of OS X won't create a .bash_profile for you. When you want to run functions from your command line, this is a must-have.
Start up Terminal
Type cd ~/ to go to your home folder
Type touch .bash_profile to create your new file.
Edit .bash_profile with your favorite editor (or you can just type open -e .bash_profile to open it in TextEdit.
Type . .bash_profile to reload .bash_profile and update any functions you add. Notice the space between the two dots!
Update
I'm on Mac OS Mojave.
Open Terminal.app and paste bellow line,
(1) touch .bash_profile
(2) open -a TextEdit.app .bash_profile
this will open a blank page in TextEdit.app , from here you can add,update,delete code.
I hope this will help someone.
just create a new file - it doesn't come default with your computer. all under your user directory - ex. /Users/username
touch .bash_profile
~/.bash_profile
Q1. How to check if .bash_profile exists or not in my mac?
Solution: If you're using macOS 10.14 (Mojave) or below. Then open the Terminal.app. Run the following command to check if the .bash_profile exists or not in your mac.
if [ -r ~/.bash_profile ];
then
echo "Yes, file exists"
else
echo "No, file does not exists"
fi
After running the above command if you get the following line - "Yes, file exists" printed in your Terminal.app. That means the file exists in your mac.
If you get the following line - "No, file does not exist" printed in your Terminal.app. That means the file does not exist in your mac.
To create a .bash_profile file in your mac. Run the following command,
touch ~/.bash_profile
To restrict access to the .bash_profile. Run the following command,
chmod 700 ~/.bash_profile
Q2. I want to launch sublime from a command line in Mac?
Solution: To launch sublime from mac. You can make a symlink to subl. Assuming you've placed Sublime Text in the Applications folder, and that you have a ~/bin directory in your path, you can run the following command:
ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ~/bin/subl
For more details visit the official sublime documentation

After using subl command, prompt in Terminal disappears

For some reason, after Sublime Text 3 upgraded itself, my subl command hasn't been working properly. When I type in subl xxx, xxx folder will not be opened as a project, and there is no next terminal prompt. Instead, I'd have to ctrl-c to get my prompt back. Using subl . also doesn't open the current working directory as a project in Sublime. And again, the terminal doesn't prompt me until I hit ctrl-c. Anyone have any ideas what's going on?
I encountered same issue and what I did was to set up my shortcut again.
remove the subl file from the /usr/local/bin folder, you can do this from the command line by running this command rm /usr/local/bin/subl
copy the new sublime binary file to the bin folder, you can do so by running this command from your terminal cp /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin
restart your terminal and sublime should be working perfectly well now
If not, just re-install sublime to your machine and follow the steps above to copy the subl executable file to the bin folder

Sublime 3: Subl not working

Before today I had Sublime 2 and 3 on my computer. When I ran the subl command in the terminal it would always open Sublime 2, which I never use anymore. Therefore I got rid of Sublime 2. Now my subl command does not work at all. All I get is subl command not found.
I understand that I have to put a subl binary file into my bin folder. I was just wondering what might be the best way to go about doing that. Any insight on this particular instance would help.
Thanks in advance,
According to their website:
ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ~/bin/subl
(The command is almost identical to the one for version 2.)
If you have a fresh install of OS X, this will probably fail for you. First, create a ~/bin directory under your home and add it to your path. This will vary by your shell, but if you use bash..
mkdir ~/bin
echo "export PATH=$PATH:~/bin" >> ~/.bash_profile
source ~/.bash_profile
Then you should be able to run the ln command and subl to your hearts content.
As a side note, a simplified version of this can be accomplished with the open command for any app. Try open -a TextEdit hello.txt for similar effect. I've aliased this for a hex editor that didn't offer a CLI launcher like subl.
Try this: (it worked for me)
alias subl="'/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl'"
alias nano="subl"
export EDITOR="subl"
Shortly after I posted this question I found the answer. The issue was that because the subl file in my bin or binary folder was tied to Sublime 2, when I uninstalled Sublime 2 it also uninstalled that binary.
All I did was copy the subl file from Sublime 3 into the bin or binary folder. I did have use the terminal in order to get down to the bin folder. Once I opened both folders with the terminal I just copied the subl binary from Sublime 3 to my binary folder.

Sublime Text 2 and Terminal

So I'm trying to make it so that I can start Sublime Text 2 from the terminal through this command, given by the Sublime Text documentation:
ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl
But for some reason this is not working. I get this error from my terminal:
ln: /Users/connorblack/bin/subl: No such file or directory
Can anyone help me with this?
Other details: I have SB2 in my Applications folder. I'm trying to do RoR development.
Your problem is that you don't have a ~/bin directory, just do
mkdir ~/bin
And then retry the command, it should work
Note that to use subl from this folder you will still need to add it to your PATH, add this line to your .bashrc or .zshrc:
export PATH=$PATH:/Users/connorblack/bin

command "subl" from terminal don't work

I am a Mac-newbie (Mountain Lion) and try to set up the "subl"-command for the terminal, like described here:
The first task is to make a symlink to subl. Assuming you've placed
Sublime Text 2 in the Applications folder, and that you have a ~/bin
directory in your path, you can run:
ln -s "/Applications/Sublime Text
2.app/Contents/SharedSupport/bin/subl" ~/bin/subl
But it doesn't work. I have now a folder /bin/ under my user and this folder including a alias. But when I tip in subl --help inside the terminal, I get the error -bash: subl: command not found
Can someone helps me out?
KR & thx, Fabian
Change directories to:
/usr/local/bin
then run this instead:
ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" subl
I have found the solution now - there was a problem with RVM. The solution is to enter the command
ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/.rvm/bin/subl
into the terminal.
That happened to me with Sublime Text 3.
This symlink works for me, only I needed was to change the symlink destination to /usr/local/bin/subl
ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl
Solution source Paul Byrne answer here
Using Homebrew to install Sublime usually creates the correct symlinks automatically.
brew install Caskroom/cask/sublime-text
Subl can then be accessed like:
# Open Sublime at current directory
subl .
The solution chosen for this question is to put the subl symlink in the ~/.rvm/bin folder which is definitely not a generic solution as this directory is part of a program he has installed.
Although any directory in the path will work, the most common solution is to create a bin directory in the home folder, set it in the path by putting export PATH=$PATH:~/bin in .bash_profile and then running the link command as shown in the original question with this new path.
In the past it was common to put the subl symlink in /usr/local/bin but this directory no longer exists in OSX as of version 10.2 and the /usr/local directory is no longer in the default path.
SOLVED for MAC OSX Mavericks!
I found this answer on this GitHubGist:
https://gist.github.com/artero/1236170
Launch Sublime Text 2 from the Mac OS X Terminal
ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime
This is the part that I found clarified what many StackOverflow responses have only hinted at, but not explicitly explained:
Now let's do a check to see if everything will run smoothly. Enter this:
open ~/.bash_profile
(In some cases the profile file is named ~/.profile)
You should see at the top of the file a line that starts with: export PATH=
This contains all the directories that will be looked into for executable binaries when you type a command in Terminal. Since we create a symlink to subl called sublime in the /usr/local/bin directory let's check if this directory is listed on that same line.
If it is, perfect. Let's keep going. If not, simply add it like this and save the file:
export PATH=/usr/local/bin:(...)
Note: The '(...)' in this example represents other folders that would be listed on the same line and separated by a colon.
If you don't already have a PATH set in your bash_profile you can type:
export PATH=/usr/local/bin:$PATH
If you had to add /usr/local/bin to your PATH, run the following command before continuing:
source ~/.bash_profile
This will reload your .bash_profile with the newly added directory.
Testing
Open a Terminal window and run:
sublime filename (replace "filename" by an actual file name)
Hope that helps clarify for others as well. Currently (FALL 2014) using Mac OSX Mavericks. Cheers
If you just want the command to open files using sublime text, and you're not bothered to use it as your default editor for all commands, why not just add an alias to your ~/.bash-profile ?
alias subl="open -a 'Sublime Text'"
That will work for opening files and directories
Had the same problem on a MAC with OSX Yosemite 10.10.5, and sublime text 3 Build 3083!
Configuring git to work with the above requirements worked perfectly using:
git config --global core.editor "/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl -n -w"
And test if it worked with:
git config -e
It works on Mac OSX 10.8.2, echo $PATH shows subl symlink correctly linked as described in this post. The other suggestions on Sublime Text 2 page seem not work with new Macs
I discovered that there was an alias for subl. Type alias to see all defined aliases. Find the source and comment it out, or use unalias subl to unset.
For .bashrc or .zshrc
alias subl="open . -a /Applications/Sublime\ Text.app"
Catalina's auto-sandboxing seems to broke the subl command.
Use the following alias as an alternative
alias subl="open $1 -b com.sublimetext.3"
After $ subl . did not work for me,
I tried $ bundle exec subl . and it worked.
Solution: type $ bundle exec subl . and it should work. (Obviously, omitting the $)

Resources