# Add hotkey to Obsidian Publish search
> [!noteinfo]
> Last update: 27.07.2024 · #obsidian #code #css #javascript #en-lang
Put this code in[ publish.js file.](https://help.obsidian.md/Obsidian+Publish/Customize+your+site)
### Option 1
Using <kbd>control+f</kbd>.
```javascript
function setPlaceholder() {
var searchBar = document.querySelector('.search-bar');
if (searchBar) {
searchBar.placeholder = 'New search Ctrl+F';
}
}
function setupKeyboardShortcut() {
document.addEventListener('keydown', function(e) {
if (e.ctrlKey && e.key === 'f') {
e.preventDefault();
var searchBar = document.querySelector('.search-bar');
if (searchBar) {
searchBar.focus();
}
}
});
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', function() {
setPlaceholder();
setupKeyboardShortcut();
});
} else {
setPlaceholder();
setupKeyboardShortcut();
}
```
### Option 2
Using <kbd>command+k</kbd> (Mac) or <kbd>control+k</kbd> (Windows/Linux) (my favorite).
```javascript
console.log('publish.js loaded');
function setPlaceholder() {
var searchBar = document.querySelector('.search-bar');
if (searchBar) {
var userAgent = navigator.userAgent;
if (userAgent.indexOf('Mac') !== -1) {
searchBar.placeholder = 'Search lab using ⌘+K';
} else {
searchBar.placeholder = 'Search lab using ctrl+K';
}
}
}
function setupKeyboardShortcut(e) {
if ((e.metaKey || e.ctrlKey) && e.key === 'k') {
e.preventDefault();
var searchBar = document.querySelector('.search-bar');
if (searchBar) {
searchBar.focus();
}
}
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', function() {
setPlaceholder();
document.addEventListener('keydown', setupKeyboardShortcut);
});
} else {
setPlaceholder();
document.addEventListener('keydown', setupKeyboardShortcut);
}
```
### Autofocus
This version includes an autofocus of the search input when loading the page:
```javascript
console.log('publish.js loaded');
function focusSearchBar() {
var searchBar = document.querySelector('.search-bar');
if (searchBar) {
searchBar.focus();
searchBar.placeholder = 'Search the lab using Ctrl+F';
}
}
function setupKeyboardShortcut() {
document.addEventListener('keydown', function(e) {
if (e.ctrlKey && e.key === 'f') {
e.preventDefault();
focusSearchBar();
}
});
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', function() {
focusSearchBar();
setupKeyboardShortcut();
});
} else {
focusSearchBar();
setupKeyboardShortcut();
}
```
Modified code to use <kbd>command+k</kbd> (<kbd>control+k</kbd> on Windows/Linux) hotkey.
```javascript
console.log('publish.js loaded');
function setPlaceholderAndFocus() {
var searchBar = document.querySelector('.search-bar');
if (searchBar) {
var userAgent = navigator.userAgent;
if (userAgent.indexOf('Mac') !== -1) {
searchBar.placeholder = 'Search lab using ⌘+K';
} else {
searchBar.placeholder = 'Search lab using ctrl+K';
}
searchBar.focus();
}
}
function setupKeyboardShortcut(e) {
if ((e.metaKey || e.ctrlKey) && e.key === 'k') {
e.preventDefault();
var searchBar = document.querySelector('.search-bar');
if (searchBar) {
searchBar.focus();
}
}
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', function() {
setPlaceholderAndFocus();
document.addEventListener('keydown', setupKeyboardShortcut);
});
} else {
setPlaceholderAndFocus();
document.addEventListener('keydown', setupKeyboardShortcut);
}
```