Author: adrian

  • Error: ENOSPC: System limit for number of file watchers reached

    The meaning of this error is that the number of files monitored by the system has reached the limit!!

    Result: The command executed failed! Or throw a warning (such as executing a react-native start VSCode)

    Solution:

    Modify the number of system monitoring files

    Ubuntu

    sudo gedit /etc/sysctl.conf

    Add a line at the bottom

    fs.inotify.max_user_watches=524288

    Then save and exit!

    sudo sysctl -p

    to check it

    Then it is solved!

    Credit: https://stackoverflow.com/questions/55763428/react-native-error-enospc-system-limit-for-number-of-file-watchers-reached

  • Gutenberg attributes to console

    Log attributes to console using the following:

    wp.data.select( 'core/block-editor' ).getSelectedBlock().attributes;

    Source: https://notlaura.com/log-gutenberg-blocks-attributes-to-console/

  • JavaScript email validation

    var emailreg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,10})$/;
    
    if( emailreg.test( 'value_to_test_against' ) == false ) {
       //Email invalid
    }
  • SSH-ADD on Windows

    If you receive the following error when running the ssh-add command: Could not open a connection to your authentication agent, try this:

    cd path-to-Git/bin (for me : cd C:\Program Files\Git\bin)
    bash
    exec ssh-agent bash
    ssh-add REPLACE_WITH_SSHKEY
  • Js/jQuery email validation

    Using regular expressions

    let email = jQuery('.nl-sub-email');
    let emailReg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,10})$/;
    let errors = 0;
    
    if( ! email.val() || emailReg.test( email.val() ) == false ) {
      email.css('border', '1px solid red');
      email.focus();
      errors = 1;
    } else {
      email.css('border', '1px solid transparent');
      errors = 0;
    }
  • Preloader CSS

    Animation required:

    @keyframes lds-dual-ring {
        0% {
            transform: rotate(0deg);
        }
        100% {
            transform: rotate(360deg);
        }
    }
    

    Practical example

    button::after {
        content: "";
        display: inline-block;
        width: 18px;
        height: 18px;
        margin: 0 0 0 8px;
        border-radius: 50%;
        border: 3px solid white;
        border-color: white transparent white transparent;
        animation: lds-dual-ring 1.2s linear infinite;
    }
  • Keyword checkers

    https://trends.google.com/trends/
    https://www.wordstream.com/keywords
    https://keywordsheeter.com/
    https://answerthepublic.com/
    https://chrome.google.com/…/bafijghppfhdpldihckdcadbcob…
    https://www.highervisibility.com/seo/tools/keyworddit
    https://search.google.com/search-console/about
    https://questiondb.io/
    https://www.highervisibility.com/…/bulk-keyword-generator/
    https://www.google.com/

    Updated:

    https://alsoasked.com
    https://soovle.com/
    https://answersocrates.com/
    https://pypi.org/project/pytrends/

    Google Auto Suggest

    https://keywordtool.io/
    https://keywordsheeter.com/
    https://soovle.com/
    https://chrome.google.com/webstore/detail/seo-minion/giihipjfimkajhlcilipnjeohabimjhi?hl=en&fbclid=IwAR3vCWvDlg0s-_DgX5tab-xI_R4sNa8WiU8O871zLeXwSMVz9ZqDsf8SSiA

  • When PHP html_entity_decode() function fails

    Use this:

    function replace_tags( $text ) {

        $replace = array(
            '%20' => ' ',
            '+'   => ' ',
            '%7F' => ' ',
            '%81' => ' ',
            '%C5%8D' => ' ',
            '%8F' => ' ',
            '%C2%90' => ' ',
            '%9D' => ' ',
            '%C2%A0' => ' ',
            '%C2%AD' => ' ',
            '%21' => '!',
            '%22' => '"',
            '%23' => '#',
            '%24' => '$',
            '%25' => '%',
            '%26' => '&',
            '%27' => "'",
            '%28' => '(',
            '%29' => ')',
            '%2A' => '*',
            '%2B' => '+',
            '%2C' => ',',
            '%2D' => '-',
            '%2E' => '.',
            '%2F' => '/',
            '%30' => '0',
            '%31' => '1',
            '%32' => '2',
            '%33' => '3',
            '%34' => '4',
            '%35' => '5',
            '%36' => '6',
            '%37' => '7',
            '%38' => '8',
            '%39' => '9',
            '%3A' => ':',
            '%3B' => ';',
            '%3C' => '<',
            '%3D' => '=',
            '%3E' => '>',
            '%3F' => '?',
            '%40' => '@',
            '%41' => 'A',
            '%42' => 'B',
            '%43' => 'C',
            '%44' => 'D',
            '%45' => 'E',
            '%46' => 'F',
            '%47' => 'G',
            '%48' => 'H',
            '%49' => 'I',
            '%4A' => 'J',
            '%4B' => 'K',
            '%4C' => 'L',
            '%4D' => 'M',
            '%4E' => 'N',
            '%4F' => 'O',
            '%50' => 'P',
            '%51' => 'Q',
            '%52' => 'R',
            '%53' => 'S',
            '%54' => 'T',
            '%55' => 'U',
            '%56' => 'V',
            '%57' => 'W',
            '%58' => 'X',
            '%59' => 'Y',
            '%5A' => 'Z',
            '%5B' => '[',
            '%5C' => '\\',
            '%5D' => ']',
            '%5E' => '^',
            '%5F' => '_',
            '%60' => '`',
            '%61' => 'a',
            '%62' => 'b',
            '%63' => 'c',
            '%64' => 'd',
            '%65' => 'e',
            '%66' => 'f',
            '%67' => 'g',
            '%68' => 'h',
            '%69' => 'i',
            '%6A' => 'j',
            '%6B' => 'k',
            '%6C' => 'l',
            '%6D' => 'm',
            '%6E' => 'n',
            '%6F' => 'o',
            '%70' => 'p',
            '%71' => 'q',
            '%72' => 'r',
            '%73' => 's',
            '%74' => 't',
            '%75' => 'u',
            '%76' => 'v',
            '%77' => 'w',
            '%78' => 'x',
            '%79' => 'y',
            '%7A' => 'z',
            '%7B' => '{',
            '%7C' => '|',
            '%7D' => '}',
            '%7E' => '~',
            '%E2%82%AC' => '€',
            '%E2%80%9A' => ',',
            '%C6%92' => 'ƒ',
            '%E2%80%9E' => '„',
            '%E2%80%A6' => '...',
            '%E2%80%A0' => '†',
            '%E2%80%A1' => '‡',
            '%CB%86'    => '^',
            '%E2%80%B0' => '‰',
            '%C5%A0'    => 'Š',
            '%E2%80%B9' => '‹',
            '%C5%92'    => 'Œ',
            '%C5%BD'    => 'Ž',
            '%E2%80%98' => '‘',
            '%E2%80%99' => '’',
            '%E2%80%9C' => '“',
            '%E2%80%9D' => '”',
            '%E2%80%A2' => '•',
            '%E2%80%93' => '-',
            '%E2%80%94' => '-',
            '%CB%9C'    => '~',
            '%E2%84'    => '™',
            '%C5%A1'    => 'š',
            '%E2%80'    => '›',
            '%C5%93'    => 'œ',
            '%C5%BE'    => 'ž',
            '%C5%B8'    => 'Ÿ',
            '%C2%A1'    => '¡',
            '%C2%A2'    => '¢',
            '%C2%A3'    => '£',
            '%C2%A4'    => '¤',
            '%C2%A5'    => '¥',
            '%C2%A6'    => '¦',
            '%C2%A7'    => '§',
            '%C2%A8'    => '¨',
            '%C2%A9'    => '©',
            '%C2%AA'    => 'a',
            '%C2%AB'    => '«',
            '%C2%AC'    => '¬',
            '%C2%AE'    => '®',
            '%C2%AF'    => '¯',
            '%C2%B0'    => '°',
            '%C2%B1'    => '±',
            '%C2%B2'    => '2',
            '%C2%B3'    => '3',
            '%C2%B4'    => '´',
            '%C2%B5'    => 'µ',
            '%C2%B6'    => '¶',
            '%C2%B7'    => '·',
            '%C2%B8'    => '¸',
            '%C2%B9'    => '1',
            '%C2%BA'    => '0',
            '%C2%BB'    => '»',
            '%C2%BC'    => '¼',
            '%C2%BD'    => '½',
            '%C2%BE'    => '¾',
            '%C2%BF'    => '¿',
            '%C3%80'    => 'À',
            '%C3%81'    => 'Á',
            '%C3%82'    => 'Â',
            '%C3%83'    => 'Ã',
            '%C3%84'    => 'Ä',
            '%C3%85'    => 'Å',
            '%C3%86'    => 'Æ',
            '%C3%87'    => 'Ç',
            '%C3%88'    => 'È',
            '%C3%89'    => 'É',
            '%C3%8A'    => 'Ê',
            '%C3%8B'    => 'Ë',
            '%C3%8C'    => 'Ì',
            '%C3%8D'    => 'Í',
            '%C3%8E'    => 'Î',
            '%C3%8F'    => 'Ï',
            '%C3%90'    => 'Ð',
            '%C3%91'    => 'Ñ',
            '%C3%92'    => 'Ò',
            '%C3%93'    => 'Ó',
            '%C3%94'    => 'Ô',
            '%C3%95'    => 'Õ',
            '%C3%96'    => 'Ö',
            '%C3%97'    => 'x',
            '%C3%98'    => 'Ø',
            '%C3%99'    => 'Ù',
            '%C3%9A'    => 'Ú',
            '%C3%9B'    => 'Û',
            '%C3%9C'    => 'Ü',
            '%C3%9D'    => 'Ý',
            '%C3%9E'    => 'Þ',
            '%C3%9F'    => 'ß',
            '%C3%A0'    => 'à',
            '%C3%A1'    => 'á',
            '%C3%A2'    => 'â',
            '%C3%A3'    => 'ã',
            '%C3%A4'    => 'ä',
            '%C3%A5'    => 'å',
            '%C3%A6'    => 'æ',
            '%C3%A7'    => 'ç',
            '%C3%A8'    => 'è',
            '%C3%A9'    => 'é',
            '%C3%AA'    => 'ê',
            '%C3%AB'    => 'ë',
            '%C3%AC'    => 'ì',
            '%C3%AD'    => 'í',
            '%C3%AE'    => 'î',
            '%C3%AF'    => 'ï',
            '%C3%B0'    => 'ð',
            '%C3%B1'    => 'ñ',
            '%C3%B2'    => 'ò',
            '%C3%B3'    => 'ó',
            '%C3%B4'    => 'ô',
            '%C3%B5'    => 'õ',
            '%C3%B6'    => 'ö',
            '%C3%B7'    => '÷',
            '%C3%B8'    => 'ø',
            '%C3%B9'    => 'ù',
            '%C3%BA'    => 'ú',
            '%C3%BB'    => 'û',
            '%C3%BC'    => 'ü',
            '%C3%BD'    => 'ý',
            '%C3%BE'    => 'þ',
            '%C3%BF'    => 'ÿ'
        );
    
        foreach( $replace as $what => $with ) {
            $text = str_replace( $what, $with, $text );
        }
    
        return $text;
    
    }