- Press Alt/Command and then click in each region where you require a cursor.
- Select a block of lines : Shift + Command + L.
- Place the cursor over a particular word, and press Control/Command + D repeatedly to select additional occurrences of that word.
- Add an additional cursor at all occurrences of a word : Alt+F3 on Windows or Ctrl+Command+G on Mac.
Sublime Text: Multiple cursors or Multi-selection
Multiple cursors or Multi-selection in sublime text is easy
Laravel: Debug by Printing Eloquent Query
Use ->toSql() method like shown below to get the SQL
<?php
use Log;
$name = "hawk";
$userResults = DB::table('users')
->leftJoin('planets', function($join) {
$join->on('users.planet_id', '=' , 'planets.id');
})
->where('users.lname' , 'like', '%'.$name.'%');
//You can print the SQL in your log file
Log::info('My search sql: '.($userResults->toSql()));
// OR you can save into a string variable
$mySQL = $userResults->toSql();
//Then use your get function
$userResults = $userResults->get(array('users.fname', 'planets.name'));
?>
The above code will print the following into your /storage/logs/laravel.log file
[2014-09-30 17:58:07] production.INFO: My search sql: SELECT * FROM users LEFT JOIN planets ON (users.planet_id = planets.id) WHERE users.lname LIKE '%hawk%'
Laravel 4: Easy Installation of PHP mcrypt extension for OS X 10.8/10.9
An automated PHP mcrypt extension installer for OS X 10.8/10.9 - Mountain lion and Mavericks.
Download here: http://topicdesk.com/downloads/mcrypt/mcrypt-download
Download here: http://topicdesk.com/downloads/mcrypt/mcrypt-download
Laravel, Eloquent: SQL query with left join
If the query needs parentheses/brackets for a where condition like below
Normal SQL:
SELECT users.fname, planets.name
FROM users
LEFT JOIN planets ON (users.planet_id = planets.id)
WHERE users.lname LIKE '%hawk%'
ELOQUENT SQL:
$name = "hawk";
$userResults = DB::table('users')
->leftJoin('planets', function($join) {
$join->on('users.planet_id', '=' , 'planets.id');
})
->where('users.lname' , 'like', '%'.$name.'%')
->get(array('users.fname', 'planets.name'));
Eloquent: SQL Query with where or in brackets
If the query needs parentheses/brackets for a where condition like below
Normal SQL:
SELECT *
FROM users
WHERE planet = 'earth'
AND (fname LIKE '%hawk%' OR lname LIKE '%hawk%')
AND state = 'FL'
ELOQUENT SQL:
$name = "hawk";
$usersResults = DB::table('users')
->where('planet', '=', 'earth')
->where(function($query) use ($name){
$query->where('fname' , 'like', '%'.$name.'%');
$query->orWhere('lname' , 'like', '%'.$name.'%');
})
->where('state', '=', 'FL')
->get();
Wordpress: Print-friendly, Print as it looks in browser
If you you want to print a wordpress blog/site as it looks on the browser, then you have to
1. Login to the Wordpress as admin
2. Goto Appearance->Editor in the Left Sidebar menu.
3. On the right side find Header.php file
4. In the file locate the following piece of code
6. Click Update file at the bottom to save the changes in header.php
1. Login to the Wordpress as admin
2. Goto Appearance->Editor in the Left Sidebar menu.
3. On the right side find Header.php file
4. In the file locate the following piece of code
<link rel=”stylesheet” href=”<?php bloginfo(‘stylesheet_url’); ?>” type=”text/css” media=”screen” />
5. Modify to the media=""screen" to media="screen, print"6. Click Update file at the bottom to save the changes in header.php
<link rel=”stylesheet” href=”<?php bloginfo(‘stylesheet_url’); ?>” type=”text/css” media=”screen, print” />
Oracle: Split a String Based on Delimiter
We can split a string based on Delimiter using a combination of INSTR and SUBSTR functions:
INSTR Returns the position of a String within a String. For more information see Oracle instr function
SUBSTR Returns a substring. For more information see Oracle substring
Syntax of SUBSTR:
first
Example 2:
First Second
orange apple
INSTR Returns the position of a String within a String. For more information see Oracle instr function
SUBSTR Returns a substring. For more information see Oracle substring
Syntax of SUBSTR:
SUBSTR([input],[start],[length])
Example 1:
select substr('orange.apple',1,(instr('orange.apple','.')) - 1)
from dual
Output:first
Example 2:
select substr('orange.apple',1,(instr('orange.apple,'.')) - 1) as First,
substr('orange.apple', (instr('orange.apple','.')) + 1) as Second
from dual
Output:First Second
orange apple
Eclipse keyboard shortcuts and Sublime Text 3 keybord shortcuts
Switching from Eclipse to Sublime Text 3?, need some quick shortcuts to
1. Switching/Moving Lines up and down
Eclipse shortcut: ⌘-UP to move lines up, ⌘-DOWN to move lines down,
Sublime Text 3: CTRL-⌘-UP to move lines up, CTRL-⌘-DOWN to move lines down.
2. Deleting Entire Line your cursor is on
Eclipse shortcut:⌘-D
Sublime Text 3: CTRL-SHIFT-K
3. Goto Line in File
Eclipse shortcut: ⌘-L
Sublime Text 3: ⌘-P, then type a colon followed by the line number (e.g. :12 for line 12). To go to a line in another file, type the file name and then a colon and the line number.
1. Switching/Moving Lines up and down
Eclipse shortcut: ⌘-UP to move lines up, ⌘-DOWN to move lines down,
Sublime Text 3: CTRL-⌘-UP to move lines up, CTRL-⌘-DOWN to move lines down.
2. Deleting Entire Line your cursor is on
Eclipse shortcut:⌘-D
Sublime Text 3: CTRL-SHIFT-K
3. Goto Line in File
Eclipse shortcut: ⌘-L
Sublime Text 3: ⌘-P, then type a colon followed by the line number (e.g. :12 for line 12). To go to a line in another file, type the file name and then a colon and the line number.
LaTeX: LaTeX Templates for Nature, Science and for various physics journals
Here is where you can find LaTeX templates for various physics journals:
Nature: [Download here]
LaTeX templates for other Physics Journals: [Click here ]
Nature: [Download here]
LaTeX templates for other Physics Journals: [Click here ]
Mac: Install OPEN MPI on Mac OS
Step 1 : If you haven't installed XCODE. Download and Install XCODE
Step 2 :
Install Open MPI. Download the latest stable release of Open MPI from the Open Source High Performance Computing website.
Step 3:
Open terminal and Go to the downloaded directory
Extract the downloaded archive :
tar -zxvf openmpi-1.6.5.tar.gz
Open terminal and Go to the extracted directory:
cd /path/to/extracted/openmpi-1.6.5
Run the following commands
./configure --prefix=/usr/local
make all
sudo make install
Step 4: Add OpenMPI path to your path, run the following commands export
PATH=/usr/local/openmpi/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/openmpi/lib:$LD_LIBRARY_PATH
export DYLD_LIBRARY_PATH=$LD_LIBRARY_PATH
Step 5: Compile your C/C++ program
For C:
mpicc -o myProgExe myProg.c
For C++:
mpic++ -o myProgExe myProg.cpp
Step 6: Run, where -np is the number of processor to run on.
mpirun -np 8 myProgExe
Step 2 :
Install Open MPI. Download the latest stable release of Open MPI from the Open Source High Performance Computing website.
Step 3:
Open terminal and Go to the downloaded directory
Extract the downloaded archive :
tar -zxvf openmpi-1.6.5.tar.gz
Open terminal and Go to the extracted directory:
cd /path/to/extracted/openmpi-1.6.5
Run the following commands
./configure --prefix=/usr/local
make all
sudo make install
Step 4: Add OpenMPI path to your path, run the following commands export
PATH=/usr/local/openmpi/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/openmpi/lib:$LD_LIBRARY_PATH
export DYLD_LIBRARY_PATH=$LD_LIBRARY_PATH
Step 5: Compile your C/C++ program
For C:
mpicc -o myProgExe myProg.c
For C++:
mpic++ -o myProgExe myProg.cpp
Step 6: Run, where -np is the number of processor to run on.
mpirun -np 8 myProgExe
Gmail Tricks ;), Get more usage out of your Gmail address !
1. Create Filters with multiple Senders
Use the 'OR' keyword in between emails.
Set up the filter as "email1@gmail.com OR email2@gmail.com" and continue from there.
2. The Plus Sign (+) in your Gmail address
For example you have an email address: ravi@gmail.com, then
So from next time when u register, which requires your email, or when you post a contact email on your website. You can create a filter and manage these emails to be automatically archived, deleted, etc...
3. The dot Sign (.) in your Gmail address
For example you have an email address: ravi@gmail.com, then
Use the 'OR' keyword in between emails.
Set up the filter as "email1@gmail.com OR email2@gmail.com" and continue from there.
2. The Plus Sign (+) in your Gmail address
For example you have an email address: ravi@gmail.com, then
- ravi@gmail.com = ravi+anything@gmail.com = ravi+socialmedia@gmail.com
Gmail ignores anything after the + sign. But sends/recieves with the full email address.
So, Why do you want to use the + sign ? To manage junk and unwanted emails :)
You can use this kind of email address at some social or coupon websites to register and later manage(probably delete) all their associated emails or notifications.
So for example, you could register at these websites with ravi+couponjunk@gmail.com . And then create a filter with ravi+couponjunk@gmail.com and you can continue from there...
So from next time when u register, which requires your email, or when you post a contact email on your website. You can create a filter and manage these emails to be automatically archived, deleted, etc...
3. The dot Sign (.) in your Gmail address
For example you have an email address: ravi@gmail.com, then
- ravi@gmail.com = r.a.v.i@gmail.com = ra.vi@gmail.com = r.av.i@gmail.com
Gmail ignores periods (.) as characters in email addresses.
jQuery: Disable backgroud scrolling when simplemodal modal box is opened.
When using jQuery simplemodal, when the modal box is box is opened , following is one way to disable the scrolling in the background.
We change the css overflow property of the background in the onShow and onClose functions..
Example:
We change the css overflow property of the background in the onShow and onClose functions..
Example:
$("#sample").modal({
maxWidth:800, minHeight:800,
onShow: function(dialog) {
$("html,body").css("overflow","hidden");
//YOur remaining javascript...
},
onClose: function(dialog) {
$("html,body").css("overflow","auto");
$.modal.close();
}
});
CakePHP: Update model after changing database
After changes are made in the Database, to see the changes updated or reflect to the cakephp models, do the following
- Delete all the temporary model files from
app/tmp/cache/models/*
. - In app/Config/core.php, change the debug value from 0 to 3, load your app in browser and again change it from 3 to 0
Run Internet Explorer 7, 8, and 9 in Mac OS X
Source: http://osxdaily.com/2011/09/04/internet-explorer-for-mac-ie7-ie8-ie-9-free/
Following is the post from osxdaily.com
Notes: the admin password for all of the IE VMs is “Password1″ without the quotes. This has been tested and confirmed to work with Mac OS X 10.7 Lion and Mac OS X 10.6 Snow Leopard.
- Download & Install VirtualBox – Download Now (direct .dmg download link) – visit VirtualBox Downloads page
- Launch the Terminal (located in /Applications/Utilities/)
- Decide which versions of Internet Explorer you want to download and install – each version of Internet Explorer is contained within a separate virtual machine that runs within VirtualBox. In other words, if you want to run Internet Explorer 7, 8, and 9, you will need to download three separate VM’s, which may take a while so keep that in mind. Select the text below and copy it:
Install ALL versions of Internet Explorer: IE7, IE 8, and IE 9
curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | bash
Install Internet Explorer 7 Only
curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="7" bash
Install Internet Explorer 8 Only
curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="8" bash
Install Internet Explorer 9 Only
curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="9" bash
- Copy and paste the selected command from above into the Terminal and hit return, this will start the download and conversion process. How long this takes depends on your internet connection and how many versions of Internet Explorer you chose to install
- Launch VirtualBox and boot Windows & Internet Explorer – select the virtual machine corresponding to the version of Internet Explorer you intend to use: IE7, IE8, IE9, then click on the “Start” button to boot that Windows machine with that version of Internet Explorer.
Remember that the default Windows admin password is “Password1″, it’s also the password hint within the VM should you forget it.
That’s really all there is to it. These commands are part of the ievsms script from xdissent and it manages the entire download, conversion, and installation procedure, it doesn’t get much easier.
VM Snapshots Circumvent Microsofts 30 Day Limitation
The other great thing about this method is that it circumvents Microsofts 30 day limitation by utilizing snapshots, a feature built into VirtualBox. This preserves the original Windows VM state and allows you to continuously use the IE virtual machine without any time limitation simply by reverting to the original snapshot once the 30 day lock occurs.
To use a snapshot after the 30 day Windows expiration, just open VirtualBox, select the IE VM, and click on the “Snapshots” button. From here you can boot from the original snapshot that was created and use IE again for another 30 days. You can do this indefinitely, effectively having a clean IE test environment forever.
Following is the post from osxdaily.com
Notes: the admin password for all of the IE VMs is “Password1″ without the quotes. This has been tested and confirmed to work with Mac OS X 10.7 Lion and Mac OS X 10.6 Snow Leopard.
Install ALL versions of Internet Explorer: IE7, IE 8, and IE 9
Install Internet Explorer 7 Only
Install Internet Explorer 8 Only
Install Internet Explorer 9 Only
curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | bash
curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="7" bash
curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="8" bash
curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="9" bash
The other great thing about this method is that it circumvents Microsofts 30 day limitation by utilizing snapshots, a feature built into VirtualBox. This preserves the original Windows VM state and allows you to continuously use the IE virtual machine without any time limitation simply by reverting to the original snapshot once the 30 day lock occurs.
Subscribe to:
Posts (Atom)
Python contextlib for Timing Python code
If you've ever found yourself needing to measure the execution time of specific portions of your Python code, the `contextlib` module o...
-
If you get the following error while installing FFMPEG or other packages on CentOS 7. Requires: libva.so.1(VA_API_0.33.0)(64bit) Follow...
-
Common error: fallocate: fallocate failed: Text file busy in ubuntu OS Check the allocation: free -m or sudo swapon --show Make sure ...
-
How to fix Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' Apparently, Ma...