דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
עדלאידעע

עדלאידע

@עדלאידע
מדריכים
אודות
פוסטים
968
נושאים
35
שיתופים
0
קבוצות
2
עוקבים
9
עוקב אחרי
3

פוסטים

פוסטים אחרונים הגבוה ביותר שנוי במחלוקת

  • שיתוף | תיקון הבאג של ה-3 אפליקציות ביישומים אחרונים ב-m36
    עדלאידעע עדלאידע

    אז אחרי שעות של זיהוי ותיקון הבעיה,
    מצאתי את הבאג המכוון של היצרן שדאג לנו לשלל באגים במכשיר,
    היצרן שלנו הוסיף בsmali של services.jar פונקציה שדואגת שלא יהיה יותר משלוש אפליקציות ביישומים אחרונים

    עזבו את הרעיון הגרוע כשלעצמו, הוא גם השתמש בפונקציה ישנה של אנדרואיד, שפועלת רק על המשתמש הראשי, כך שאם פותחים משתמש חדש הפונקציה לא פועלת עליו...

    אז ערכתי את הפונקציה הזאת שבכלל לא תתחיל, ויצרתי מודול מאג'יסק שדוחף את ה-services.jar המתוקן לסיסטם,
    פשוט להתקין את המודול ולהפעיל מחדש, כמובן דורש רוט...
    Recent Apps Limit Fix.zip

    ליוצרי הגירסאות, זה הservices.jar המתוקן, לשים ב-/system/framework

    עזרה הדדית - אנדרואיד

  • הצעת ייעול | סינון לפי נושאים (באמת) חדשים
    עדלאידעע עדלאידע

    שלום לכולם,
    חשבתי שאולי יוסיפו אפשרות לסינון נושאים לפי תאריך יצירתם
    ולא לפי הפוסט האחרון בשרשור.
    זה יכול לעשות הרבה סדר
    מה אתם אומרים?

    הפילטר של 'נושאים חדשים' לא באמת מסנן לפי תאריך יצירת הנושא כפי שניתן לראות,
    (אין לי מושג לפי מה?!)
    fbf923ea-81d7-460e-a349-d5d31d1b8188-image.png

    באגים/הצעות ייעול

  • מדריך | מדריך מקיף לשימוש וכתיבת סקריפטים לתוסף הפופולארי - Tampermonkey
    עדלאידעע עדלאידע

    אז מה זה Tampermonkey?

    Tampermonkey הוא תוסף לדפדפן עם מעל 11 מיליון משתמשים (!), שמאפשר להריץ סקריפטים על דפי אינטרנט.
    סקריפטים אלו מאפשרים לשנות, להוסיף או לשפר את התפקוד של אתרי אינטרנט, כגון:

    • שינוי עיצוב אתרים.
    • הוספת אלמנטים חדשים.
    • מחיקת אלמנטים קיימים.
    • עריכת אלמנטים קיימים.
    • אוטומציה של פעולות באתר.

    בשורה התחתונה, Tampermonkey מיועד למשתמשים שרוצים שליטה גמישה על האתרים שבהם הם גולשים.

    תחילת השימוש ב-Tampermonkey

    ראשית, נתקין את התוסף לכרום או לפיירפוקס

    • נלחץ לחיצה ימנית על האייקון של התוסף בשורת התוספים.

    • נלחץ על Create a new script:
      3bd7da0d-9ce5-498c-8efd-0337bed4f7f0-image.png

    • ונעבור לדף כתיבת קוד של Tampermonkey:
      צילום מסך 2025-01-03 040859.png

    • בלוח הבקרה (Installed Userscripts) נראה את כל הסקריפטים שלנו, מה המצב של כל סקריפט, על איזה אתרים הוא פועל, וכו', ונוכל לשלוט עליהם:
      0eb1c068-31d5-42b6-b66c-8eec0d34c2b6-image.png

    • בלשונית Utilities נוכל להתקין קובץ JS ישירות מהמחשב, או לייבא מURL של קובץ JS.


    כתיבת סקריפטים ל-Tampermonkey

    כל סקריפט ב-Tampermonkey מורכב משני חלקים עיקריים:

    1. Metadata Block: [מקביל לmanifest.json בתוספים] חלק זה מכיל מידע חשוב על הסקריפט, כמו שם הסקריפט, באיזה אתרים הוא ירוץ, מה הוא עושה, ואילו הרשאות הוא דורש.

    2. JavaScript Code: זה החלק שבו נכתוב את הקוד JS שאנחנו רוצים שירוץ על האתר .


    למזלינו, Tampermonkey מביא לנו כבר קוד בסיסי מוכן, אז תתפנקו:

    // ==UserScript==
    // @name         New Userscript
    // @namespace    http://tampermonkey.net/
    // @version      2025-01-03
    // @description  try to take over the world!
    // @author       You
    // @match        https://*/*
    // @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
    // @grant        none
    // ==/UserScript==
    
    (function() {
        'use strict';
    
        // Your code here...
    })();
    

    החלק הראשון: Metadata Block

    זהו החלק שמתחיל ב ==UserScript== ומסתיים ב ==/UserScript==
    הוא כתוב בסגנון הערות, אך הוא חשוב מאוד כדי שהתוסף ידע איך להתנהל עם הסקריפט.
    הוא מכיל תגיות שמגדירות איך, איפה, ומה הסקריפט יעשה.

    הסבר לכל תגית ב-Metadata Block:

    תגית שמסומנת ב (*) זה אומר שחייבים לכתוב אותה.

    • @name(*): שם הסקריפט שיוצג בלוח הבקרה.
      לדוגמה: הסקריפט שלי

    • @namespace: אני לא יגע בזה עכשיו כי זה לא כ"כ חשוב,
      תכתבו: /http://tampermonkey.net

    • @version: גרסת הסקריפט.
      לדוגמה: 999.9

    • @description: תיאור הסקריפט.
      לדוגמה: תנסו ותראו...

    • @author: השם של כותב הסקריפט.
      לדוגמה: אני

    • @match(*): הכתובת שבה הסקריפט ירוץ.
      בשביל להגדיר עוד כתובת שבה הסקריפט ירוץ, תוסיפו מתחת עוד תגית @match
      ניתן להשתמש בכוכביות לתתי כתובות.
      לדוגמה: /https://mitmachim.top יריץ את הסקריפט רק על דף הבית של "מתמחים טופ"
      ו: */https://mitmachim.top יריץ את הסקריפט על כל הפורום.
      אם אתם רוצים שהסקריפט ירוץ על כל הדפי אינטרנט, תכתבו:

    *://*/*
    
    • @icon: כתובת של תמונה קטנה שתוצג בלוח הבקרה ליד שם הסקריפט.

    • @grant(*): הגדרת הרשאות שהסקריפט זקוק להן.
      לדוגמה אם רוצים להזריק CSS לאתר: GM_addStyle
      וכאשר לא נדרשות הרשאות מיוחדות: none
      בשביל להגדיר עוד הרשאה, תוסיפו מתחת עוד תגית @grant


    תגיות Metadata למתקדמים


    החלק השני: JavaScript Code

    אחרי בלוק המטא, מתחיל החלק שבו נכתוב את הקוד עצמו.

    ראשית נכתוב:

    (function() {
        'use strict';
    
    })();
    

    ובשורה 3 נכתוב את הקוד שלנו,


    מכיוון שאנחנו לא במדריך JS, אז אני יכתוב רק דוגמא קטנה:

    // ==UserScript==
    // @name         הצלחתם!
    // @match        https://mitmachim.top/*
    // @grant        none
    // ==/UserScript==
    
    (function() {
        'use strict';
           alert('הצלחתם!');
    })();
    

    תשמרו את הקוד הזה ע"י לחיצה על ctrl+s, או file>save
    תלכו לכל עמוד במתמחים טופ, תרעננו, ואם קופץ לכם חלון עם ההודעה "הצלחתם!" סימן שבאמת הצלחתם!


    בהמשך אני מקווה להעלות כמה סקריפטים שימושיים.
    בינתיים יש לכם את הסקריפט הזה שהביא @נ-נח האלוף כאן, שמאפשר לגלול את המסך בGPT עם החיצים במקלדת:

    // ==UserScript==
    // @name         גלילה עם המקלדת בGPT
    // @version      1
    // @description  -
    // @match        https://chatgpt.com/*
    // @icon         https://www.google.com/s2/favicons?sz=64&domain=chatgpt.com
    // @grant        window.onurlchange
    // ==/UserScript==
    
    function loadScript() {
        const timer = setInterval(() => {
            const scrollElem = document.querySelector('[class~="@container/thread"]>*>*>*');
            if (scrollElem) {
                clearInterval(timer);
                scrollElem.setAttribute('tabindex', '0');
                scrollElem.style.outline = 'none';
                scrollElem.focus();
            }
        }, 500);
    }
    
    loadScript();
    window.onurlchange = loadScript;
    
    

    למען הסדר הטוב - תגובות אך ורק כאן.

    מדריכים - מחשבים וטכנולוגיה tampermonkey userscript טמפרמונקי סקריפט script

  • שיתוף | סקריפט להוספת כפתור למתמחים טופ, למיון לפי נושאים אחרונים
    עדלאידעע עדלאידע

    כתבתי סקריפט לטמפרמונקי, שמוסיף בסרגל הכלים כפתור למיון נושאים לפי תאריך יצירתם,
    כשלוחצים עליו עוברים לדף עם כל הנושאים האחרונים ממוינים לפי הסדר שהעלו אותם.
    (דבר שהיה מאוד חסר [לי בכל אופן] בפורום).

    ce19c290-5f9d-4c39-a135-7cc9a71aae42-image.png

    תשמרו את הקוד הזה בתוסף Tampermonkey

    // ==UserScript==
    // @name         כפתור "נושאים אחרונים" במתמחים טופ
    // @namespace    http://tampermonkey.net/
    // @version      24193.644
    // @description  מוסיף כפתור "נושאים אחרונים" לסינון נושאים לפי תאריך יצירה במתמחים טופ
    // @icon         https://mitmachim.top/assets/uploads/files/1736623243134-220_f_113125302_tteb9ox2w2h554esgjduh9a7mvsy5zfo-removebg-preview.png
    // @match        https://mitmachim.top/*
    // @grant        GM_addStyle
    // ==/UserScript==
    
    (function () {
        'use strict';
    
        const styles = `
            #recent-topics-tooltip{position:fixed;background-color:#212529;color:#fff;padding:2px 10px;border-radius:6px;font-size:16px;font-weight:150;font-family:"Assistant",sans-serif;white-space:nowrap;z-index:1100;pointer-events:none;--arrow-size:6px;}
            #recent-topics-tooltip::before{content:"";position:absolute;top:50%;left:100%;margin-top:calc(-1*var(--arrow-size));border-width:var(--arrow-size);border-style:solid;border-color:transparent transparent transparent #212529;}
        `;
        GM_addStyle(styles);
    
        let currentTooltip = null;
        const TOOLTIP_TEXT = "נושאים אחרונים";
        const TOOLTIP_GAP = -100;
    
        function showDynamicTooltip(targetElement) {
            const sidebar = document.querySelector('nav[component="sidebar/left"]');
            if (sidebar && sidebar.classList.contains('open')) {
                return; 
            }
    
            removeDynamicTooltip();
            currentTooltip = document.createElement('div');
            currentTooltip.id = 'recent-topics-tooltip';
            currentTooltip.textContent = TOOLTIP_TEXT;
            document.body.appendChild(currentTooltip);
            const rect = targetElement.getBoundingClientRect();
            const tooltipRect = currentTooltip.getBoundingClientRect();
            let top = rect.top + (rect.height / 2) - (tooltipRect.height / 2);
            let left = rect.left + rect.width + TOOLTIP_GAP - 58;
            if (top < 5) top = 5;
            if (top + tooltipRect.height > window.innerHeight - 5) top = window.innerHeight - tooltipRect.height - 5;
            if (left + tooltipRect.width > window.innerWidth - 5) left = window.innerWidth - tooltipRect.width - 5;
            currentTooltip.style.top = `${top}px`;
            currentTooltip.style.left = `${left}px`;
            currentTooltip.style.right = 'auto';
        }
    
        function removeDynamicTooltip() {
            if (currentTooltip) {
                currentTooltip.remove();
                currentTooltip = null;
            }
        }
    
        function waitForNavBar() {
            const navBar = document.querySelector('#main-nav');
            const postsElement = navBar?.querySelector('[data-bs-original-title="פוסטים אחרונים"]');
            if (navBar && postsElement) addRecentTopicsButton(postsElement); else requestAnimationFrame(waitForNavBar);
        }
    
        function addRecentTopicsButton(anchorElement) {
            if (anchorElement.parentNode.querySelector('[data-bs-original-title="נושאים אחרונים"]')) return;
            const button = document.createElement('li');
            button.className = 'nav-item mx-2';
            button.innerHTML = `<a class="nav-link navigation-link d-flex gap-2 justify-content-between align-items-center" href="https://mitmachim.top/search?in=titles&term=&matchWords=all&by=&categories=&searchChildren=false&hasTags=&replies=&repliesFilter=atleast&timeFilter=newer&timeRange=&sortBy=topic.timestamp&sortDirection=desc&showAs=topics" aria-label="נושאים אחרונים"><span class="d-flex gap-2 align-items-center text-nowrap truncate-open"><img src="https://mitmachim.top/assets/uploads/files/1736619302714-220_f_113125302_tteb9ox2w2h554esgjduh9a7mvsy5zfo-removebg-preview.png" alt="נושאים אחרונים" style="width: 24px; height: 24px; object-fit: contain;"/><span class="nav-text small visible-open fw-semibold text-truncate">נושאים אחרונים</span></span></a>`;
            anchorElement.insertAdjacentElement('afterend', button);
            const buttonLink = button.querySelector('a');
            buttonLink.addEventListener('click', (e) => {
                e.preventDefault();
                sessionStorage.setItem('clickedRecentTopics', 'true');
                handleRecentTopicsClick(e.target.closest('a').href);
            });
            button.addEventListener('mouseenter', (event) => {
                showDynamicTooltip(event.currentTarget);
            });
            button.addEventListener('mouseleave', removeDynamicTooltip);
        }
    
        function handleRecentTopicsClick(targetUrl) {
            history.pushState(null, '', targetUrl);
            updatePageTitleAndContent();
        }
    
        function updatePageTitleAndContent() {
            if (sessionStorage.getItem('clickedRecentTopics') === 'true' && window.location.href.includes('sortBy=topic.timestamp')) {
                document.title = 'נושאים אחרונים';
                ['.flex-shrink-0.pe-2.border-end-md.text-sm.mb-3', '.d-flex.flex-wrap.gap-2.align-items-center[component="search/filters"]', '.card.card-header.text-xs.px-2.py-1.fw-semibold.border-0.align-self-start'].forEach((selector) => document.querySelector(selector)?.remove());
            }
        }
    
        waitForNavBar();
        updatePageTitleAndContent();
        new MutationObserver(updatePageTitleAndContent).observe(document.body, { childList: true, subtree: true });
        window.addEventListener('popstate', updatePageTitleAndContent);
    })();
    

    מי שעדיין לא יודע איך משתמשים ב Tampermonkey,
    כתבתי כאן מדריך מקיף לשימוש וכתיבת סקריפטים לתוסף הפופולארי - Tampermonkey.


    בעצם כשלוחצים על הכפתור, מגיעים לדף הזה של חיפוש בפורום, אבל הסקריפט מוחק את כל האלמנטים של החיפוש.

    תודה ל @צדיק-תמים שהביא לי כאן את הקישור לדף הנ"ל.
    כמובן שהייתי צריך להסיר את האלמנטים של החיפוש כשלוחצים על השעון חול,
    אבל בלעדיו לא היה לי רעיון איך לייבא את רשימת הנושאים האחרונים, אז תודה.


    בהצלחה.

    באגים/הצעות ייעול

  • שיתוף | MapSearch | תוסף לחיפוש מהיר במפות גוגל
    עדלאידעע עדלאידע

    MapSearch

    icon.png


    בתור אחד שמשתמש הרבה בגוגל-מפות,
    אם אני רוצה לחפש כתובת שכתובה בדף אינטרנט,
    זה די מעצבן כל פעם לסמן את הכתובת, להעתיק, לפתוח כרטיסיה חדשה, להיכנס לגוגל-מפות, להדביק את הכתובת, ולחפש...
    אז בניתי תוסף פשוט לחיפוש מהיר בגוגל-מפות.


    מתקינים את התוסף מכאן


    איך משתמשים?

    פשוט מסמנים את הכתובת שאנחנו רוצים, לוחצים על מקש ימני, והופ, נוספה לנו אפשרות חדשה:
    288ebd8d-9c12-4e84-99f7-cf705f46192c-image.png

    לוחצים על "3d1eb08a-f5a8-4b71-8c13-16ee60541b9b-image.png search In Google Maps"
    ונפתחת כרטיסיה חדשה עם המיקום שבחרנו, בגוגל-מפות.
    למי שרוצה, יש כאן סרטון הדגמה קצר,
    https://www.youtube.com/watch?v=ine6-Yn_LGs
    הארות והערות יתקבלו בברכה.

    בהצלחה!

    כללי - עזרה הדדית

  • שיתוף | Pinning a videos|תוסף להצמדת סרטונים למסך(PiP), תומך ביוטיוב+עוד כמה אתרים
    עדלאידעע עדלאידע

    Pinning a videos

    icon.png


    הכנתי תוסף שמאפשר להצמיד סרטונים למסך,
    וגם כשעוברים לכרטיסיה/תוכנה אחרת במחשב,
    עדיין רואים את הסרטון,
    ואפשר להגדיר את הגודל והמיקום של הסרטון.

    בקיצור, מצב תמונה בתוך תמונה.


    מתקינים את התוסף מכאן


    איך משתמשים?

    פשוט נכנסים לסרטון כלשהו, לוחצים על האייקון של התוסף,
    88934b57-e981-44b0-9bb0-b1b045e76779-image.png

    לוחצים על "📌Pin a video📌"
    ונפתח לנו חלון וידאו קטן, שישאר על המסך בכל מקום שנהיה:
    צילום מסך 2024-12-12 200042.png
    ומתי שרוצים אפשר לסגור:
    012b7c86-b1b7-4df7-9dcc-84e0b1369969-image.png


    התוסף תומך בהצמדת סרטונים באתרים הבאים:
    יוטיוב
    הידברות
    בחזית
    JDN
    ערוץ 2000

    למען הסדר הטוב,

    אם ראיתם עוד אתר שאפשר להצמיד בו סרטונים עם התוסף,

    נא להודיע לי בפרטי, ולא בשרשור.


    שימו לב: הסרתי גישה לתוסף מהארצות: לבנון, מצריים, סוריה, איראן, וכו'

    כן יאבדו כל אויביך ה'.


    למי שרוצה, יש כאן סרטון הדגמה קצר.
    https://www.youtube.com/watch?v=S2vykRkNmJM
    הארות הערות ופידבקים יתקבלו בברכה.

    ?Easy, right

    כללי - עזרה הדדית

  • הבהרה | שימוש נכון בציטוטים ותגובות
    עדלאידעע עדלאידע

    שלום לכולם,
    רציתי להעלות נקודה קטנה וחשובה, ששמתי לב שלא כולם מודעים לה.
    לעיתים קרובות אני נתקל במשתמשים שמגיבים על פוסטים ארוכים באמצעות ציטוט של כל הטקסט,
    ובסוף מוסיפים תגובה קצרה כמו "תודה רבה" או "צודק" וכו'.

             דוגמא

    הערה: הטקסט הבא הוא טקסט גנרי, ואין להתייחס למשמעותו כלל.

    Lorem ipsum dolor sit amet consectetur adipisicing elit. Deserunt alias ducimus veritatis neque ab
    blanditiis inventore porro, explicabo delectus animi similique consequatur rerum dignissimos quo! Itaque pariatur vero quasi rem excepturi architecto! Blanditiis vel quis quibusdam eveniet repellat optio molestias. Ab magnam eos quod aperiam debitis accusamus voluptatem! Placeat, dicta. Rerum assumenda placeat, consequatur quos eligendi consequuntur numquam, ex fugiat odit iure aspernatur! Repellat saepe maxime sed quae ipsam? Cum corporis numquam nemo perferendis totam, corrupti voluptatibus delectus, tempora asperiores laudantium vitae, labore in consectetur consequuntur natus et dolor? Amet perferendis magni debitis. Rem eos pariatur quis voluptatem consectetur rerum odio libero officia, facilis, asperiores corrupti! Atque facilis quidem aliquid quis est, quia at earum maiores eaque error, maxime voluptate molestias quisquam totam. Reiciendis, nostrum! Fuga explicabo cumque odit expedita porro hic labore tempora laudantium molestias cupiditate provident voluptate, perspiciatis cum delectus ipsam enim quibusdam ipsa, recusandae magnam numquam dicta assumenda odio ullam. Officia eveniet corrupti, nobis unde porro magnam cumque consequatur, autem vitae exercitationem ullam quas delectus consequuntur tempora ipsa, necessitatibus quo sapiente repudiandae error id? Dolore quibusdam dignissimos quia quo, ea aut labore cupiditate, voluptatibus, ex at velit ullam debitis beatae nisi voluptatem id. Eveniet sint molestiae quia praesentium libero ducimus nam. Exercitationem quam modi earum vitae. Delectus porro tempora corrupti et, iste pariatur omnis quibusdam quasi reiciendis voluptate distinctio harum vel ad non, blanditiis incidunt? Saepe deserunt temporibus ut nostrum iure natus, perspiciatis obcaecati ad odit ullam eos voluptatem, veniam adipisci ipsam sed. Quo, ratione ipsum, magni in asperiores minus ea, doloremque repellendus velit adipisci sed eligendi tempore reprehenderit deserunt quod quidem laborum exercitationem pariatur dicta! Nihil distinctio quisquam quis enim numquam fuga! Quasi, voluptate corporis nam fuga, facere similique possimus, amet porro nobis a doloremque. Autem nam beatae eius sit amet? Quia placeat dolorem libero, quisquam minima magnam ut aperiam nam sint error nihil velit mollitia tempore laudantium, rem distinctio, quos id asperiores ratione! Tempore quidem accusantium vel iste aspernatur ad asperiores rerum voluptas doloremque dolore inventore quam sit nostrum unde, laborum quis error esse? Ea debitis accusamus iusto repellendus nihil eaque non ad reprehenderit, placeat, enim quia officia exercitationem provident praesentium dolorum quasi fugit molestias. Ex recusandae quia illo molestiae corrupti quaerat! Eveniet tenetur explicabo deleniti minima nobis sunt? Laborum, debitis laboriosam dolores ipsum sequi at iusto sit voluptatibus harum dignissimos fugit mollitia animi tempora cum explicabo impedit ex non, facere aliquam consequatur. Quisquam neque necessitatibus eveniet suscipit, vel amet animi provident ad quis in quam sunt impedit! Ratione autem ullam animi quibusdam temporibus illum tenetur. Unde rerum esse ab error vero, veritatis ipsa cumque itaque provident? Facilis explicabo ut laudantium rerum accusantium consectetur obcaecati. Inventore repellat ipsam cum veritatis quo magni illum sed eligendi eos amet quisquam minus eveniet eaque, saepe exercitationem ad sequi. Illo, aliquid neque natus molestiae iste laboriosam quia perferendis illum veritatis similique repellat reiciendis quos. Velit omnis porro voluptatem nulla saepe labore soluta sapiente reiciendis necessitatibus rem! Nobis amet vero sit quo iusto? Suscipit adipisci harum in magni debitis dolor architecto placeat saepe ipsa quis dolorum aliquid sequi at eum quos aspernatur praesentium sed, nesciunt explicabo! Quaerat rerum optio enim odio sint quidem nemo expedita praesentium cupiditate laudantium quod libero velit autem similique quae illo ut voluptate nihil quis quas minima temporibus, pariatur sequi? Autem ducimus laudantium quasi maxime facilis sunt aliquid deleniti illum tempora mollitia, atque praesentium reiciendis molestiae dolorem perspiciatis rem excepturi error architecto quis repellat dicta nesciunt. Magnam quae eligendi minima doloribus necessitatibus soluta unde rerum id! Sequi omnis sapiente voluptatibus temporibus nam? Magnam eligendi ullam minima explicabo nam tenetur ut voluptatibus perferendis ratione quaerat quidem quibusdam qui voluptas sed repellat nulla aut facere, nesciunt consequatur aliquam ipsa, magni cumque. Possimus ab, vitae laboriosam quis pariatur voluptatibus quod sint vero quidem ipsam deserunt fugiat qui fugit ullam aliquid expedita sapiente itaque voluptates eius! Vitae blanditiis porro repudiandae vo

    תודה רבה, מדריך ממש מושקע.

    הדבר מקשה מאוד על הקריאה, כיוון שצריך לגלול טקסטים ארוכים שכבר נקראו.

    ברצוני להבהיר שציטוט מיועד להגיב לנקודה או משפט ספציפי מהפוסט,
    ואם רוצים להגיב על כל הפוסט – יש להשתמש בכפתור תגובה.

    אני לא מתכוון למישהו או משהו מסוים, ובבקשה אל תקחו אותי כאחד שבא להטיף לכם מוסר.
    אני מעלה זאת מתוך אכפתיות וכדי שכולנו נוכל להמשיך ליהנות מפורום נקי ואיכותי.

    תודה לכולם, וחנוכה שמח.

    אופן השימוש בפורום

  • הסבר | תגובה חריגה מ- Gemini
    עדלאידעע עדלאידע

    @g0527 צילום מסך 2024-11-14 150223.png

    עזרה הדדית - בינה מלאכותית

  • עזרה | להחזיר תמר.טופ ? תעזרו לי להשפיע על נטפרי
    עדלאידעע עדלאידע

    @לא-מתייאש כתב בעזרה | להחזיר תמר.טופ ? תעזרו לי להשפיע על נטפרי:

    בקיצור אם יהיה כמה שיבקשו מנטפרי לפתוח CORS אוליי ישפיע

    חברים
    אם אתם רוצים שמישהו בנטפרי יתחיל להזיז משהו
    אז כדאי שתפנו אליהם, ותבקשו לפתוח הרשאות CORS לאתר של @לא-מתייאש
    צילום מסך 2024-12-30 002609.png
    אז למה אתם מחכים?
    צאו להשפיע!

    עזרה הדדית - בניית ופיתוח אפליקציות

  • שיתוף | הפעלת מחוות החלקה ב-TIQ M5s (יותר מידי קל...)
    עדלאידעע עדלאידע

    שמתי לב שבפלאפון TIQ M5s, יש כל מיני אפשרויות שהם לא מוצגים בשומקום בהגדרות,
    ואפשר לגשת אליהם באמצעות חיפוש בהגדרות בלבד.

    לדוג' הפלאפון מגיע עם אפשרויות מפתחים מופעלות כבר, אבל התפריט "{ } אפשרויות למפתחים", לא נמצא ב-"מערכת"
    רק כשמחפשים בהגדרות "אפשרויות למפתחים" ונכנסים - רק אז זה נוסף ל-"מערכת".

    ו... לא תאמינו!!!

    אפשר גם להפעיל מחוות החלקה, באמצעות חיפוש של "ניווט באמצעות תנועות"
    ae704433-269e-4aba-ab51-1ec6bb3bf104-image.png

    פשוט נכנסים ומסמנים את "ניווט באמצעות תנועות",
    8fb80713-4cdb-46ca-b9c3-df9b600e068f-image.png

    וזהו, מחוות ההחלקה פועלת!

    עכשיו אתם מבינים למה זה מקוטלג כ"שיתוף ולא כ"מדריך"?

    משום מה האפשרות "ניווט ב-3 לחצנים" לא מוסיפה את סרגל הניווט לתחתית המסך.
    אם אתם בכל זאת רוצים להוסיף עוד שורה במסך הפצפון הזה... אתם יכולים לפעול לפי המדריך הזה, דורש רוט.

    עזרה הדדית - אנדרואיד

  • מדריך | איך מכינים מטוס בינוני ממכונת כביסה
    עדלאידעע עדלאידע

    @שטיגליץ כתב במדריך | איך מכינים מטוס בינוני ממכונת כביסה:

    נצרכים כמה מצרכים פשוטים שנמצאים בכל בית, מקסימום תשאילו מהשכנים.

    מאז התותח של שנה שעברה - כבר אין לי שכנים...

    אני הייתי לוקח שניים גברתנים ושניים רגילים

    אני לקחתי ארבעה גברתנים, הם זרקו אותי מהגג בלי המכונת כביסה (לפחות הם השאירו לי קסדה שנשארה אי-שם במעמקי המכונה...) לקחו את המכונה וברחו...

    אחרי שמיקדנו את המקום המיועד לנחיתה - פשוט צריך להעביר בצמוד אליו את הבניין,

    נראה לי יותר ריאלי זה להעביר את משטח הנחיתה ליד הבניין...


    ו... כבוד הרב @שטיגליץ שליט"א - אנחנו מחכים לשנה הבאה למדריך: איך מכינים צוללת גרעינית מתנור אפייה

    א פריילאכן פורים

    מכשירי חשמל ביתיים

  • מדריך | מדריך מקיף לשימוש וכתיבת סקריפטים לתוסף הפופולארי - Tampermonkey
    עדלאידעע עדלאידע

    תגיות Metadata למתקדמים

     

    • @run-at: קובע מתי הסקריפט ירוץ ביחס לטעינת הדף:

      • document-start: לפני טעינת הדף.

      • document-end: אחרי טעינת ה-HTML של הדף.

      • document-idle: אחרי טעינת כל המשאבים.

      • context-menu: רק כשלוחצים קליק ימני.


    • @grant(*): תגית חובה - הגדרת הרשאות שהסקריפט זקוק להן:

      • GM_addStyle: מאפשר להוסיף CSS מותאם אישית לדף.

      • GM_setValue: שומר ערך באופן מקומי עבור הסקריפט.

      • GM_getValue: קורא ערך שמור מקומי של הסקריפט.

      • GM_deleteValue: מוחק ערך שמור מקומי.

      • GM_listValues: מחזיר רשימה של כל המפתחות השמורים מקומית.

      • GM_xmlhttpRequest: מאפשר לבצע בקשות רשת לדומיינים חיצוניים (צריך להגדיר דומיינים מורשים ב @connect).

      • GM_download: מאפשר להוריד קבצים מדף אינטרנט.

      • GM_registerMenuCommand: מוסיף אפשרות מותאמת אישית לתפריט של Tampermonkey כשלוחצים על האייקון.

      • GM_unregisterMenuCommand: מסיר אפשרות מותאמת אישית מהתפריט של Tampermonkey כשלוחצים על האייקון.

      • GM_openInTab: פותח URL בכרטיסייה חדשה.

      • GM_setClipboard: מאפשר העתקה נוחה של טקסט ללוח.

      • GM_getResourceText: טוען משאב טקסט שהוגדר עם @resource.

      • GM_getResourceURL: מחזיר URL של משאב שהוגדר עם @resource.

      • GM_info: מספק מידע על הסקריפט והרשאותיו.

      • GM_log: רושם הודעות שקשורות לתפעול הסקריפט בקונסול של הדפדפן.


    • @exclude: מחריג דפים מסוימים מהרצת הסקריפט.

    • @noframes: מונע את הפעלת הסקריפט בתוך iframe.

    • @connect: מגדיר לאיזה דומיינים מותר לסקריפט לבצע בקשות רשת.

    • @updateURL: מגדיר URL שממנו הסקריפט יתעדכן אוטומטית.

    • @resource: מאפשר לטעון קבצי CSS, תמונות או JSON.

    • @require: מאפשר לייבא סקריפטים או ספריות JS חיצוניות.

    למען הסדר הטוב - תגובות אך ורק כאן.

    מדריכים - מחשבים וטכנולוגיה tampermonkey userscript טמפרמונקי סקריפט script

  • שיתוף | תיקון הבאג של ה-3 אפליקציות ביישומים אחרונים ב-m36
    עדלאידעע עדלאידע

    @פיני10 כתב בשיתוף | תיקון הבאג של ה-3 אפליקציות ביישומים אחרונים ב-m36:

    (למה התעוררת לכתוב את זה רק עכשיו?)

    כי רק עכשיו היה לי זמן לחקור איפה בדיוק הבעיה...

    מותר לשאול מי כיוון אותך לשם?

    עשיתי Logcat ב-ADB ובדקתי מה קורה כשאני פותח את האפליקציה הרביעית, ראיתי שהוא סוגר את האפליקציה הראשונה בגלל הפונקציה removeTask,
    חיפשתי את הפונקציה הזאת ב-SystemUI ולא מצאתי, חיפשתי ב-framework-res וראיתי את הפונקציה הרגילה של ניהול אפליקציות אבל היה שם משהו מוזר כאילו הוא מחכה לפונקציה שתדרוס אותו,
    אז האזנתי עם Frida לפונקציה removeTask וראיתי שמה שמפעיל אותה זה הפונקציה checkRecentTask בקלאס RecentTasks
    אז בדקתי ב-services.jar וב"ה מצאתי את הפונקציה.

    אם זה מעניין אותך זה הפונקציה:

    .method private checkRecentTask()V
    .registers 10
    code
    Code
    .line 1192
    iget-object v0, p0, Lcom/android/server/wm/RecentTasks;->mService:Lcom/android/server/wm/ActivityTaskManagerService;
    
    iget-object v0, v0, Lcom/android/server/wm/ActivityTaskManagerService;->mContext:Landroid/content/Context;
    
    iget-object v1, p0, Lcom/android/server/wm/RecentTasks;->mService:Lcom/android/server/wm/ActivityTaskManagerService;
    
    iget-object v1, v1, Lcom/android/server/wm/ActivityTaskManagerService;->mContext:Landroid/content/Context;
    
    const-string v1, "activity"
    
    invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
    
    move-result-object v0
    
    check-cast v0, Landroid/app/ActivityManager;
    
    .line 1194
    .local v0, "mAm":Landroid/app/ActivityManager;
    const/16 v1, 0xa
    
    .line 1195
    .local v1, "minNumTasksToQuery":I
    :try_start_12
    invoke-static {}, Landroid/app/ActivityManager;->getMaxRecentTasksStatic()I
    
    move-result v2
    
    invoke-static {v1, v2}, Ljava/lang/Math;->max(II)I
    
    move-result v2
    
    .line 1196
    .local v2, "numTasksToQuery":I
    const/4 v3, 0x3
    
    .line 1198
    .local v3, "flag":I
    invoke-virtual {v0, v2, v3}, Landroid/app/ActivityManager;->getRecentTasks(II)Ljava/util/List;
    
    move-result-object v4
    
    iput-object v4, p0, Lcom/android/server/wm/RecentTasks;->tasks2:Ljava/util/List;
    
    .line 1199
    invoke-interface {v4}, Ljava/util/List;->size()I
    
    move-result v4
    
    const/4 v5, 0x3
    
    if-le v4, v5, :cond_64
    
    .line 1200
    const/4 v4, 0x3
    
    .local v4, "i":I
    :goto_29
    iget-object v5, p0, Lcom/android/server/wm/RecentTasks;->tasks2:Ljava/util/List;
    
    invoke-interface {v5}, Ljava/util/List;->size()I
    
    move-result v5
    
    if-ge v4, v5, :cond_64
    
    .line 1201
    iget-object v5, p0, Lcom/android/server/wm/RecentTasks;->tasks2:Ljava/util/List;
    
    invoke-interface {v5, v4}, Ljava/util/List;->get(I)Ljava/lang/Object;
    
    move-result-object v5
    
    check-cast v5, Landroid/app/ActivityManager$RecentTaskInfo;
    
    .line 1202
    .local v5, "info":Landroid/app/ActivityManager$RecentTaskInfo;
    if-eqz v5, :cond_61
    
    .line 1203
    const-string v6, "kenTestTag"
    
    new-instance v7, Ljava/lang/StringBuilder;
    
    invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
    
    const-string/jumbo v8, "removeTask....."
    
    invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
    move-result-object v7
    
    iget-object v8, v5, Landroid/app/ActivityManager$RecentTaskInfo;->realActivity:Landroid/content/ComponentName;
    
    invoke-virtual {v8}, Landroid/content/ComponentName;->getPackageName()Ljava/lang/String;
    
    move-result-object v8
    
    invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
    
    move-result-object v7
    
    invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    
    move-result-object v7
    
    invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
    
    .line 1204
    iget-object v6, p0, Lcom/android/server/wm/RecentTasks;->mService:Lcom/android/server/wm/ActivityTaskManagerService;
    
    iget v7, v5, Landroid/app/ActivityManager$RecentTaskInfo;->persistentId:I
    
    invoke-virtual {v6, v7}, Lcom/android/server/wm/ActivityTaskManagerService;->removeTask(I)Z
    :try_end_61
    .catch Ljava/lang/Exception; {:try_start_12 .. :try_end_61} :catch_65
    
    .line 1200
    .end local v5    # "info":Landroid/app/ActivityManager$RecentTaskInfo;
    :cond_61
    add-int/lit8 v4, v4, 0x1
    
    goto :goto_29
    
    .line 1210
    .end local v1    # "minNumTasksToQuery":I
    .end local v2    # "numTasksToQuery":I
    .end local v3    # "flag":I
    .end local v4    # "i":I
    :cond_64
    goto :goto_6d
    
    .line 1208
    :catch_65
    move-exception v1
    
    .line 1209
    .local v1, "e":Ljava/lang/Exception;
    const-string v2, "ActivityTaskManager"
    
    const-string v3, "Failed to get recent tasks"
    
    invoke-static {v2, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
    
    .line 1211
    .end local v1    # "e":Ljava/lang/Exception;
    :goto_6d
    return-void
    .end method
    

    עזרה הדדית - אנדרואיד

  • שיתוף | הסוף לעצלות אצל GPT הידעת GPT עונה לפי טמפרטורה חזק ביותר !!!
    עדלאידעע עדלאידע

    @pythoni כתב בשיתוף | הסוף לעצלות אצל GPT הידעת GPT עונה לפי טמפרטורה חזק ביותר !!!

    אני מדבר על מי שרוצה ממנו קודים והוא מתעצל ומביא חצי שליש ורביע אז זה עוזר הרבה

    הטמפרטורה אצל GPT ממש לא קשורה ל"עצלות",
    אלא לגיוון ויצירתיות.
    בטמפרטורה נמוכה הוא יהיה מדויק וממוקד,
    ובטמפרטורה גבוהה הוא יהיה יצירתי ופתוח.

    ולכן, בשביל רעיון כלשהו, כדאי להשתמש בטמפרטורה גבוהה,
    משא"כ בשביל קוד, שכדאי להשתמש בטמפרטורה נמוכה.

    עזרה הדדית - בינה מלאכותית

  • מדריך | הסתבכתם עם ההנחיה? הבינה לא מבינה מה אתם רוצים? כנסו לפה...
    עדלאידעע עדלאידע

    @MindBlaze מעניין אותי לדעת איך נתת לבינה את ההנחיה בשביל לעשות כזה מדריך בלי שהיה לך עדיין את המדריך...

    עזרה הדדית - בינה מלאכותית

  • מדריך | הורדה מיוטיוב עם yt_dlp הדרך הקלה ביותר (קוד פתוח)
    עדלאידעע עדלאידע

    @ראובן-שבתי כתב בהמלצה | הורדה מיוטיוב עם yt_dlp הדרך הקלה ביותר (קוד פתוח):

    אם כותב שאתם מזוהים כבוט, צריך לטעון קבצי קוקיז בסקריפט (איך עושים את זה? אולי בהמשך)

    למה לא עכשיו? 😉

    עזרה הדדית - מחשבים וטכנולוגיה

  • הסבר | יש יותר צפיות ממשתמשים...
    עדלאידעע עדלאידע

    @יוסף-אלחנן כתב בהסבר | יש יותר צפיות ממשתשמים...:

    אבל איך זה הגיע ל123K צפיות?

    אתה רציני?
    בשרשור הזה
    שיתוף | להכשיר (כמעט) כל אנדרואיד לוויז ומייל בלבד – קיידרואיד 0.7.4 גרסת בטא ציבורית!
    יש 517.1k

    יכול להיות שאם משתמש נכנס פעמיים לאותו נושא זה נחשב כפעמיים צפייה?

    לא,
    אבל זה מחשב גם צפיות של אורחים.


    אבל הבאג האמיתי הוא,

    שאחרי כל רענון של כל דף בפורום,

    נוספים כ 8 צפיות,

    לא מאמינים לי?

    נסו ותראו...

    באגים/הצעות ייעול

  • שיתוף | איך לגרום לקישורים בספוילר להופיע באותה שורה
    עדלאידעע עדלאידע

    מכיוון שראיתי שהרבה משתמשים לא יודעים את זה, החלטתי להעלות על זה נושא בפני עצמו.

    בטח אתם מכירים את זה שאתם מצוטטים הודעה, שמים קישור, מדגישים טקסט, או שמים אימוג׳י בתוך ספוילר, וזה יוצא משהו כזה:

    @Random כתב ב עזרה | איזה מחשב לקנות?:

    איזה מחשב לקנות?

    אני ממליץ על
    מחשב
    🖥
    מסוג...

    אז מצאתי בפורום רכבים זה לזה פתרון לזה, והחלטתי לשתף.

    פשוט משאירים שורה ריקה בין תחילת הספוילר לתחילת הטקסט:
    753287a5-e016-4fd8-878e-eba3a93ca110-צילום מסך 2025-03-09 233627.png

    ואז זה יוצא נורמאלי:

    @Random כתב ב עזרה | איזה מחשב לקנות?:

    איזה מחשב לקנות?

    אני ממליץ על מחשב 🖥 מסוג...

    קרדיט ל@לך-תדע

    אופן השימוש בפורום

  • בירור | רוצה לקנות מכשיר חשמלי ממוכר מפוקפק בחו''ל ממה ליזהר?
    עדלאידעע עדלאידע

    @אלי-כ-0 כתב בבירור | רוצה לקנות מכשיר חשמלי ממוכר מפוקפק בחו''ל ממה ליזהר?:

    כתבתי לו שאני רוצה לשלם בPayPal בלבד אז הוא כתב לי שאפשר אבל רק עם משפחה וחברים מה כוונתו?

    בשו"פא לא!!!
    ב PayPal יש שתי אפשרויות לשלם

    • תשלום רגיל - שהחברה מספקת הגנה לקונה. אם יש בעיה כלשהי עם המוצר או שהמוכר לא שולח אותו, תוכל לפתוח תלונה ולקבל החזר.

    • תשלום לחברים ומשפחה - אפשרות זו מיועדת לתשלומים לאנשים שאתה מכיר אישית, ללא מטרות מסחריות. אין אפשרות לפתוח תלונה או בקשה להחזר במקרה שמשהו משתבש עם העסקה.

    בקיצור, הוא רוצה לעקוץ אותך, שאתה לא תוכל להתלונן לחברה שהוא עבד עליך
    תהיה חכם...

    כללי - עזרה הדדית

  • שיתוף | הסיסמה שלך באמת בטוחה? How Secure Is My Password יחליט בשבילך!
    עדלאידעע עדלאידע

    @הגאון-מכולם כתב בשיתוף | הסיסמה שלך באמת בטוחה? How Secure Is My Password יחליט בשבילך!:

    @דוד-משה-1 זה מה שהם טוענים באתר שלהם

    אה, אז בטוח שזה אמין...

    לדעתי זו דרך מעולה לגנוב סיסמאות לאנשים תמימים...

    עזרה הדדית - מחשבים וטכנולוגיה
  • התחברות

  • אין לך חשבון עדיין? הרשמה

  • התחברו או הירשמו כדי לחפש.
  • פוסט ראשון
    פוסט אחרון
0
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר