views:

337

answers:

5

I have a simple starter problem to change an open source project.

Let me first explain the situation:

I want to make some changes on an open source project (NAUTILUS) , The change is to work on This idea(Progress window for file operations) ,

  • The fist step is to download the source , done (using git)
  • The next step is to read the code , partially done.

But i couldn't find any point of code about the file operation window, (to do more research and preparing for next steps)


So, my problem is the point of code that is related to file operation, and also How to find such a point in code .

edit: Is there any design documentation ?

+6  A: 

Ask. There are several contact options on its homepage: http://live.gnome.org/Nautilus

Personally, I'd hop onto IRC (irc.gnome.org #nautilus) and get the question answered sooner (if somebody knows the answer) plus it'll serve you when you want to ask other questions.

Use their mailing list otherwise.

Oli
My main problem is how to FIND the point in code, not just witch line of code is!
amir beygi
My point is asking people who are familiar with the code will be able to explain both where things are and how they work. Between the two, they should be able to help you.You'll have much more luck there than asking here where 99.99% of people haven't even downloaded the source, let alone know how it works.
Oli
A: 

IMHO, the best way to get acquainted with such projects is by fixing bugs and then step into adding or changing functionality. List of open bugs can be found at https://bugzilla.gnome.org/browse.cgi?product=nautilus.

dtmilano
A: 

It is here:

nautilus-2.29.1/libnautilus-private/nautilus-progress-info.c line 388

We have no good documentation here,

But the solution was to search for a text-string that display on that window (example: "file operations") in source code directory, and do a back-track search to find the exact location of code.

amir beygi
A: 

Ack is an amazing search tool for source code.

It is ridiculously fast and outputs hilighted results.

Use it to search for key strings in the source code.

As already said, if you are trying to get your head around the source of an OSS project it is usually a good idea to find the most responsive channel for interactive with the community (IRC, mailing list, forum, etc)

Mark Carey
A: 

Besides asking for help from the Nautilus development community (which is an excellent idea, and you should try to engage with the developers if you are hoping to eventually contribute your changes to the project), GNU Global is a useful tool for understanding C programs. It will generate a set of HTML pages containing the source code with links between function usages and definitions. It also produces index pages listing all files and all definitions, so you can easily find particular functions. I frequently use it when I need to understand a particular code base.

Michael E