Post reply

Warning: this topic has not been posted in for at least 120 days.
Unless you're sure you want to reply, please consider starting a new topic.
Name:
Email:
Subject:
Message icon:

Verification:
Type the letters shown in the picture
Listen to the letters / Request another image

Type the letters shown in the picture:
What is the last letter in the word "SlickEdit":
How many LETTERS are in the following? "a1b2c3":
Which number is missing?  "12345689":

shortcuts: hit alt+s to submit/post or alt+p to preview


Topic Summary

Posted by: joecar
« on: October 01, 2024, 06:14:10 PM »

Background:

my project has many directories each containing many files and many symlinks to other files and directories located in other directories in the same project...  this makes the tagging difficult to navigate since each symbol shows up in N instances.
Posted by: joecar
« on: October 01, 2024, 06:07:13 PM »

More info:

I invoked SE with the option -ssymlink and I did File -> File Manager -> New File List and I see this

( actual files have non-zero file size, symlinks have zero file size ):

/* I chopped out the full pathname to make it easier to view */

>         0   5-22-2024   6:51p ----A  ndp250\src\hal\mic.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\mic.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\ndp115_dnn_regs.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\ndp115_regs.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\ndp115_spi_regs.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\ndp120_dnn_regs.h
>    534106   5-22-2024   6:51p ----A  ndp250\src\hal\ndp120_regs.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\ndp120_spi_regs.h
>     29847   5-22-2024   6:51p ----A  ndp250\src\hal\ndp250a0_dnn_regs.h
>    579097   5-22-2024   6:51p ----A  ndp250\src\hal\ndp250a0_regs.h
>     27311   5-22-2024   6:51p ----A  ndp250\src\hal\ndp250a0_spi_regs.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\ndp_regs.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\notify.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\notify.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\pdm.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\pdm.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\pwr.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\pwr.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\ringbuf.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\ringbuf.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\sample.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\sample.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\sc_reg_alias.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\sensor.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\sensor.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\sensor_function_list.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\sensor_function_list.h
>     10129   5-22-2024   6:51p ----A  ndp250\src\hal\serial.c
>      1142   5-22-2024   6:51p ----A  ndp250\src\hal\serial.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\softmax.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\softmax.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\spi.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\spi.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\spl.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\spl.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\test.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\test.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\timer.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\timer.h
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\varring.c
>         0   5-22-2024   6:51p ----A  ndp250\src\hal\varring.h
>     16499   9-26-2024  12:31p ----A  ndp250\src\hal\video.c
>       934   6-06-2024   9:31a ----A  ndp250\src\hal\video.h



Posted by: joecar
« on: September 06, 2024, 05:09:53 PM »

Another way to look at this is as follows:

when adding files to a project, a file should not be added if it is already added
( but this would be more work than checking if the file is really a symlink )
Posted by: joecar
« on: August 22, 2024, 08:58:37 PM »

$0.02 suggestion:

see attached, would skip symlinks, i.e. not add a file resulting from following a symlink.

This would avoid "duplicate" files, makes it easier to navigate tagged objects.
Posted by: Graeme
« on: August 22, 2024, 02:57:32 AM »

From Gemini

Code: [Select]
using System;
using System.IO;

namespace ListFilesExcludingSymbolicLinks
{
    class Program
    {
        static void Main(string[] args)
        {
            string folderPath = @"C:\Your\Folder\Path"; // Replace with the actual folder path

            try
            {
                foreach (string filePath in Directory.EnumerateFiles(folderPath))
                {
                    FileAttributes fileAttributes = File.GetAttributes(filePath);

                    // Check if the file is a symbolic link
                    if ((fileAttributes & FileAttributes.ReparsePoint) == FileAttributes.ReparsePoint)
                    {
                        Console.WriteLine($"Skipping symbolic link: {filePath}");
                        continue;
                    }

                    Console.WriteLine(filePath);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error: {ex.Message}");
            }
        }
    }
}


1. Create a new C# console application project.
2. Paste the code into the Program.cs file.
3. Replace the placeholder folder path with the actual path you want to scan.
4. Run the application.
Posted by: Graeme
« on: August 22, 2024, 02:52:34 AM »

ok, good.  I've discovered that all the files in the folder I was testing with have the "L" attribute - most likely because it's within my OneDrive folder.  You could probably ask Gemini or Github copilot to write you a windows app that can output a list of "non-symbolic" files and folders!  The dir command knows which files in my onedrive folder are real symbolic links.
Posted by: joecar
« on: August 21, 2024, 04:12:09 PM »

I appear to be getting correct display for dir /al and dir /a-l.
Posted by: joecar
« on: August 20, 2024, 04:39:42 PM »

Graeme, thanks, I'll try that.
Posted by: Clark
« on: August 20, 2024, 02:27:41 PM »

I was incorrect. By default, SlickEdit has symbolic link support disabled. I have corrected my previous post. An invocation option must be used to enable some level of symbolic link support.
Posted by: Graeme
« on: August 20, 2024, 07:30:07 AM »

You can use the "import" button in the project properties dialog to import the list of files and folders from a text file.

Theoretically you should be able to create a file list for importing, using the windows dir command
dir /s /b /a-L

/s recurse
/b bare format
/a-L   files that do not have the L attribute  - this is for "reparse points" i.e. symlinks and junctions

However the /a-L switch is not working for me.  /a-L gets me nothing,  /aL gets me everything.
Maybe it will work better for you.
Also you can exclude folders with /A-D.
Posted by: joecar
« on: August 19, 2024, 11:43:04 PM »

More specifically, I was looking for being able to exclude following symlinks in the Add Tree project dialog

( i.e. Project Properties -> Files -> Add Tree )

Posted by: Clark
« on: August 19, 2024, 07:17:03 PM »

SlickEdit does have some support for symlinks on Windows. By default, symbolic link support is off. Specify the +ssymlinkdirs invocation option if you want SlickEdit to recognize symbolic links directories. Specify the +ssymlink invocation option if you want SlickEdit to recognize symbolic links in files and directories. Checking for symbolic links on Windows is expensive even with caching optimizations. On Windows, SlickEdit doesn't have features for excluding symbolic links in various ways.
Posted by: joecar
« on: August 19, 2024, 05:49:50 PM »

BTW: found another app that recognizes symlinks in Windows...

Posted by: joecar
« on: June 28, 2024, 06:17:39 PM »

( it appears Windows dir command figures out that a filename is a symlink )
Posted by: joecar
« on: June 28, 2024, 06:16:19 PM »


This is what my directory looks like (using Windows dir command):

C:\Users\Joe\GitLab\syntiant-dsp-firmware.git\ndp250\src\hal>dir
 Volume in drive C has no label.
 Volume Serial Number is 5CDE-80AE

 Directory of C:\Users\Joe\GitLab\syntiant-dsp-firmware.git\ndp250\src\hal

06/28/2024  10:03 AM    <DIR>          .
06/28/2024  10:03 AM    <DIR>          ..
05/22/2024  06:51 PM    <SYMLINK>      algo_config.h [..\..\..\ndp120\src\hal\algo_config.h]
05/22/2024  06:51 PM    <SYMLINK>      algo_function_list.c [..\..\..\ndp120\src\hal\algo_function_list.c]
05/22/2024  06:51 PM    <SYMLINK>      algo_function_list.h [..\..\..\ndp120\src\hal\algo_function_list.h]
05/22/2024  06:51 PM    <SYMLINK>      algo_interface.c [..\..\..\ndp120\src\hal\algo_interface.c]
05/22/2024  06:51 PM    <SYMLINK>      algo_interface.h [..\..\..\ndp120\src\hal\algo_interface.h]
05/22/2024  06:51 PM            26,646 audio_sync.c
05/22/2024  06:51 PM    <SYMLINK>      audio_sync.h [..\..\..\ndp120\src\hal\audio_sync.h]
05/22/2024  06:51 PM    <SYMLINK>      aud_out.c [..\..\..\ndp120\src\hal\aud_out.c]
05/22/2024  06:51 PM    <SYMLINK>      aud_out.h [..\..\..\ndp120\src\hal\aud_out.h]
05/22/2024  06:51 PM    <SYMLINK>      circular_buffer.c [..\..\..\ndp120\src\hal\circular_buffer.c]
05/22/2024  06:51 PM    <SYMLINK>      circular_buffer.h [..\..\..\ndp120\src\hal\circular_buffer.h]
05/22/2024  06:51 PM    <SYMLINK>      common.c [..\..\..\ndp120\src\hal\common.c]
05/22/2024  06:51 PM    <SYMLINK>      common.h [..\..\..\ndp120\src\hal\common.h]
06/06/2024  09:31 AM            13,322 config.c
05/22/2024  06:51 PM    <SYMLINK>      config.h [..\..\..\ndp120\src\hal\config.h]
05/22/2024  06:51 PM    <SYMLINK>      crc8.c [..\..\..\ndp120\src\hal\crc8.c]
05/22/2024  06:51 PM    <SYMLINK>      crc8.h [..\..\..\ndp120\src\hal\crc8.h]
05/22/2024  06:51 PM    <SYMLINK>      debug.c [..\..\..\ndp120\src\hal\debug.c]
05/22/2024  06:51 PM    <SYMLINK>      debug.h [..\..\..\ndp120\src\hal\debug.h]
05/22/2024  06:51 PM    <SYMLINK>      delay.c [..\..\..\ndp120\src\hal\delay.c]
05/22/2024  06:51 PM    <SYMLINK>      delay.h [..\..\..\ndp120\src\hal\delay.h]
05/22/2024  06:51 PM    <SYMLINK>      dma.c [..\..\..\ndp120\src\hal\dma.c]
05/22/2024  06:51 PM    <SYMLINK>      dma.h [..\..\..\ndp120\src\hal\dma.h]
06/28/2024  11:00 AM            42,472 dnn.c
05/22/2024  06:51 PM    <SYMLINK>      dnn.h [..\..\..\ndp120\src\hal\dnn.h]
05/22/2024  06:51 PM    <SYMLINK>      errors.h [..\..\..\ndp120\src\hal\errors.h]
05/22/2024  06:51 PM    <SYMLINK>      fe_spl.c [..\..\..\ndp120\src\hal\fe_spl.c]
06/11/2024  12:22 AM            23,807 fifo.c
05/22/2024  06:51 PM    <SYMLINK>      fifo.h [..\..\..\ndp120\src\hal\fifo.h]
05/22/2024  06:51 PM    <SYMLINK>      flow.c [..\..\..\ndp120\src\hal\flow.c]
05/22/2024  06:51 PM    <SYMLINK>      flow.h [..\..\..\ndp120\src\hal\flow.h]
05/22/2024  06:51 PM    <SYMLINK>      fw_state.c [..\..\..\ndp120\src\hal\fw_state.c]
05/22/2024  06:51 PM    <SYMLINK>      fw_state.h [..\..\..\ndp120\src\hal\fw_state.h]
05/22/2024  06:51 PM            12,722 gpio.c
05/22/2024  06:51 PM    <SYMLINK>      gpio.h [..\..\..\ndp120\src\hal\gpio.h]
05/22/2024  06:51 PM    <DIR>          hal-public-interface
05/22/2024  06:51 PM    <SYMLINK>      interrupts.c [..\..\..\ndp120\src\hal\interrupts.c]
05/22/2024  06:51 PM    <SYMLINK>      interrupts.h [..\..\..\ndp120\src\hal\interrupts.h]
06/06/2024  09:31 AM            38,664 jpeg.c
06/06/2024  09:31 AM             3,535 jpeg.h
05/22/2024  06:51 PM    <SYMLINK>      mailbox.c [..\..\..\ndp120\src\hal\mailbox.c]
05/22/2024  06:51 PM    <SYMLINK>      mailbox.h [..\..\..\ndp120\src\hal\mailbox.h]
05/22/2024  06:51 PM             4,095 mem.c
05/22/2024  06:51 PM             1,381 mem.h
05/22/2024  06:51 PM    <SYMLINK>      mic.c [..\..\..\ndp120\src\hal\mic.c]
05/22/2024  06:51 PM    <SYMLINK>      mic.h [..\..\..\ndp120\src\hal\mic.h]
05/22/2024  06:51 PM    <SYMLINK>      ndp115_dnn_regs.h [..\..\..\ndp120\src\hal\ndp115_dnn_regs.h]
05/22/2024  06:51 PM    <SYMLINK>      ndp115_regs.h [..\..\..\ndp120\src\hal\ndp115_regs.h]
05/22/2024  06:51 PM    <SYMLINK>      ndp115_spi_regs.h [..\..\..\ndp120\src\hal\ndp115_spi_regs.h]
05/22/2024  06:51 PM    <SYMLINK>      ndp120_dnn_regs.h [..\..\..\ndp120\src\hal\ndp120_dnn_regs.h]
05/22/2024  06:51 PM           534,106 ndp120_regs.h
05/22/2024  06:51 PM    <SYMLINK>      ndp120_spi_regs.h [..\..\..\ndp120\src\hal\ndp120_spi_regs.h]
05/22/2024  06:51 PM            29,847 ndp250a0_dnn_regs.h
05/22/2024  06:51 PM           579,097 ndp250a0_regs.h
05/22/2024  06:51 PM            27,311 ndp250a0_spi_regs.h
05/22/2024  06:51 PM    <SYMLINK>      ndp_regs.h [..\..\..\ndp120\src\hal\ndp_regs.h]
05/22/2024  06:51 PM    <SYMLINK>      notify.c [..\..\..\ndp120\src\hal\notify.c]
05/22/2024  06:51 PM    <SYMLINK>      notify.h [..\..\..\ndp120\src\hal\notify.h]
05/22/2024  06:51 PM    <SYMLINK>      pdm.c [..\..\..\ndp120\src\hal\pdm.c]
05/22/2024  06:51 PM    <SYMLINK>      pdm.h [..\..\..\ndp120\src\hal\pdm.h]
05/22/2024  06:51 PM    <SYMLINK>      pwr.c [..\..\..\ndp120\src\hal\pwr.c]
05/22/2024  06:51 PM    <SYMLINK>      pwr.h [..\..\..\ndp120\src\hal\pwr.h]
05/22/2024  06:51 PM    <SYMLINK>      ringbuf.c [..\..\..\ndp120\src\hal\ringbuf.c]
05/22/2024  06:51 PM    <SYMLINK>      ringbuf.h [..\..\..\ndp120\src\hal\ringbuf.h]
05/22/2024  06:51 PM    <SYMLINK>      sample.c [..\..\..\ndp120\src\hal\sample.c]
05/22/2024  06:51 PM    <SYMLINK>      sample.h [..\..\..\ndp120\src\hal\sample.h]
05/22/2024  06:51 PM    <SYMLINK>      sc_reg_alias.h [..\..\..\ndp120\src\hal\sc_reg_alias.h]
05/22/2024  06:51 PM    <SYMLINK>      sensor.c [..\..\..\ndp120\src\hal\sensor.c]
05/22/2024  06:51 PM    <SYMLINK>      sensor.h [..\..\..\ndp120\src\hal\sensor.h]
05/22/2024  06:51 PM    <SYMLINK>      sensor_function_list.c [..\..\..\ndp120\src\hal\sensor_function_list.c]
05/22/2024  06:51 PM    <SYMLINK>      sensor_function_list.h [..\..\..\ndp120\src\hal\sensor_function_list.h]
05/22/2024  06:51 PM            10,129 serial.c
05/22/2024  06:51 PM             1,142 serial.h
05/22/2024  06:51 PM    <SYMLINK>      softmax.c [..\..\..\ndp120\src\hal\softmax.c]
05/22/2024  06:51 PM    <SYMLINK>      softmax.h [..\..\..\ndp120\src\hal\softmax.h]
05/22/2024  06:51 PM    <SYMLINK>      spi.c [..\..\..\ndp120\src\hal\spi.c]
05/22/2024  06:51 PM    <SYMLINK>      spi.h [..\..\..\ndp120\src\hal\spi.h]
05/22/2024  06:51 PM    <SYMLINK>      spl.c [..\..\..\ndp120\src\hal\spl.c]
05/22/2024  06:51 PM    <SYMLINK>      spl.h [..\..\..\ndp120\src\hal\spl.h]
05/22/2024  06:51 PM    <SYMLINK>      test.c [..\..\..\ndp120\src\hal\test.c]
05/22/2024  06:51 PM    <SYMLINK>      test.h [..\..\..\ndp120\src\hal\test.h]
05/22/2024  06:51 PM    <SYMLINK>      timer.c [..\..\..\ndp120\src\hal\timer.c]
05/22/2024  06:51 PM    <SYMLINK>      timer.h [..\..\..\ndp120\src\hal\timer.h]
05/22/2024  06:51 PM    <SYMLINK>      varring.c [..\..\..\ndp120\src\hal\varring.c]
05/22/2024  06:51 PM    <SYMLINK>      varring.h [..\..\..\ndp120\src\hal\varring.h]
06/06/2024  09:31 AM            16,488 video.c
06/06/2024  09:31 AM               934 video.h
              86 File(s)      1,365,698 bytes
               3 Dir(s)  917,827,252,224 bytes free

C:\Users\Joe\GitLab\syntiant-dsp-firmware.git\ndp250\src\hal>